自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Super的博客

传播正能量,大家共同进步

  • 博客(186)
  • 资源 (4)
  • 收藏
  • 关注

原创 ROS初级教程

1.安装并配置ROS环境在安装ROS期间,你会看到提示说需要 source 多个setup.*sh文件中的某一个,或者甚至提示添加这条’source’命令到你的启动脚本里面。这些操作是必须的,因为ROS是依赖于某种组合空间的概念,而这种概念就是通过配置脚本环境来实现的。这可以让针对不同版本或者不同软件包集的开发更加容易。 如果你在查找和使用ROS软件包方面遇到了问题,请确保你已经正确配置了脚本环

2017-12-27 23:21:43 450

原创 ROS入门教程

初始化 rosdep在开始使用ROS之前你还需要初始化rosdep。rosdep可以方便在你需要编译某些源码的时候为其安装一些系统依赖,同时也是某些ROS核心功能组件所必需用到的工具。 sudo rosdep initrosdep update环境设置如果每次打开一个新的终端时ROS环境变量都能够自动配置好(即添加到bash会话中),那将会方便得多:echo "source /opt/ros/in

2017-12-27 23:00:01 565

原创 使用ros的一些问题

http://blog.csdn.net/u013453604/article/details/47423135欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文

2017-12-26 09:41:18 381

原创 ORBBEC ASTRA PRO

ROS系统Astra SDK 说明目录 ROS系统安装 2 ROS-Astra-SDK获取方式 2 ROS-Astra-SDK 基本结构 3 ROS-Astra-SDK 运行及数据获取方式 3 1,Astra 运行 3 2,获取数据 4 3,Image_view显示深度数据 6 4,RVIZ显示深度数据 7ROS是现在非常流行的机器人操作系统,作为世界领先的RGBD

2017-12-25 10:59:15 5249

原创 NVIDIA jetson tx2安装ROS系统教程

安装过程参考: http://www.jetsonhacks.com/2017/03/27/robot-operating-system-ros-nvidia-jetson-tx2/

2017-12-21 17:57:06 4020

转载 关于人生观的名言

1、我们要把人生变成一信科学的梦,然后再把梦变成现实。——居里夫人    2、我们要追求那真实的功业,要追求对宇宙人生更深远的了解;要追求永远超过狭小生活圈子之外的更有用的东西。——罗曼·罗兰    3、一个人若能对每一件事都感到兴趣,能用眼睛看到人生旅途上、时间与机会不断给予他的东西,并对于自己能够胜任的事情,决不错过,在他短暂的生命中,将能够撷取多少的奇遇啊。——劳伦斯    4、我

2016-11-28 09:22:35 606

转载 ROS 不能再详细的安装教程

关于ROS(Robot OS 机器人操作系统),估计看这个博文的大兄弟之前已经都知道是啥了,我就不咋呼了… 对于ROS的安装,在它的官方网站: http://wiki.ros.org/ROS/Installation 中也有详细说明。但是对于像博主这样先天英语发育不全的人来说,直接看官网还是有点困难的。 所以博主痛定思痛,经过一番呕心沥血与含辛茹苦的调研后(其实就是看了几篇相关博客),终于在博主

2016-11-26 10:56:05 1220

转载 Ubuntu下安装QQ国际版

在UbuntuKylin官网下载winqq的安装包,下载地址如下: 下载地址 解压(使用unzip命令)后有三个文件,使用下面的命令安装:sudo dpkg -i ./fonts-wqy-microhei_0.2.0-beta-2_all.debsudo dpkg -i ./ttf-wqy-microhei_0.2.0-beta-2_all.debsudo dpkg -i ./wine-qq

2016-11-23 10:31:29 714

转载 Ubuntu 16.04版本需要安装的软件(包含搜狗输入法,Qt,unrar)

文章非本作者原创,目的用于个人收藏。文章转自(http://blog.csdn.net/skykingf/article/details/45267517),请尊重原作者的知识版权。Ubuntu 16.04发布了,带来了很多新特性,同样也依然带着很多不习惯的东西,所以装完系统后还要进行一系列的优化。1.删除libreoffice libreoffice虽然是开源的,但是Java写出来的office

2016-11-23 09:36:08 1260

原创 第1章

C++里可能出现的内存问题大致有这么几个方面: 1、缓冲区溢出。 2、空悬指针/野指针。 3、重复释放。 4、内存泄漏。 5、不配对的new[]/delete。 6、内存碎片。解决方法: 1、缓冲区溢出:用std::vector<char>/std::string或自己编写Buffer class来管理缓冲区,自动记住用缓冲区的长度,并通过成员函数而不是裸指针来修改缓冲区。 2、空悬

2016-11-07 21:40:08 378

原创 剑指Offer(面试题49-50)

面试题49:把字符串转换成整数enum Status {kValid = 0,kInvalid};int g_nStatus = kValid;int StrToInt(const char* str){ g_nStatus = kInvalid; long long num = 0; if(str != NULL && *str != '\0') {

2016-11-06 21:43:43 478

原创 剑指Offer(面试题47、48)

面试题47:不用加减乘除做加法题目:写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。int Add(int num1,int num2){ int sum,carry; do { sum = num1 ^ num2; carry = (num1 & num2) << 1; num1 = sum;

2016-11-06 21:01:43 464

原创 剑指Offer(面试题43~45)

面试题43:n个骰子的点数题目:把n个骰子仍在地上,所有骰子朝上一面的点数之和为s。输入n,打印出s的所有可能的值出现的概念。 解法一:基于递归求骰子点数,时间效率不够高 要想求出n个骰子的点数和,可以先把n个骰子分成两堆:第一堆只有一个,另一堆有n-1个。单独的那一个有可能从1到6的点数。我们需要计算从1到6的每一种和剩下的n-1个骰子来计算点数和。接下来把剩下的n-1个骰子还是分成两堆,第一

2016-11-06 20:37:48 401

原创 剑指Offer(面试题40~42)

面试题40:数组中只出现一次的数字题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写出程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。分析:我们还是从头到尾依次异或数组中的每一个数字,那么最终得到的结果就是两个只出现一次的数字的异或结果。因为其他数字都出现了两次,在异或中全部抵消了。由于这两个数字肯定不一样,那么异或的结果肯定不为0,也就是说在这个结果

2016-11-06 15:48:30 477

原创 剑指Offer(面试题38~39)

面试题38:数字在排序数组中出现的次数题目:统计一个数字在排序数组中出现的次数。例如输入排序数组{1,2,3,3,3,3,4,5}和数字3,由于3在这个数组中出现了4次,因此输出4。//递归的代码找到排列数组中的第一个k:int GetFirstK(int* data,int length,int k,int start,int end){ if(start > end)

2016-11-06 11:31:31 366

原创 剑指Offer(面试题35~37)

面试题35:第一个只出现一次的字符题目:在字符串中找出第一个只出现一次的字符。如输入“abaccdeff”,则输出‘b’。char FirstNotRepeatingChar(char* pString){ if(pString == NULL) return '\0'; const int tableSize = 256; unsigned int has

2016-11-06 09:49:00 402

原创 剑指Offer(面试题33~34)

面试题33:把数组排成最小的数题目:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这3个数字能排成的最小数字321323。 分析:一个非常直观的解决大数问题的方法就是把数字转换成字符串。另外,由于把数字m和n拼接起来得到mn和nm,它们的位数肯定是相同的,因此比较它们的大小只需要按照字符串大小的比较规则就可以了

2016-11-06 08:50:08 452

原创 剑指Offer(面试题31~32)

面试题31:连续子数组的最大和题目:输入一个整型数组,数组里有正数也有负数。数组中一个或连续的多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为O(n)。bool g_InvalidInput = false;int FindGreatestSumOfSubArray(int *pData,int nLength){ if((pData == NULL) || (nLen

2016-11-05 23:54:52 438

原创 剑指Offer(面试题29~30)

面试题29:数组中出现次数超过一半的数字题目:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。bool g_bInputInvalid = false;bool CheckInvalidArray(int* numbers,int length){

2016-11-05 12:51:53 430

原创 剑指Offer(面试题27~28)

面试题27:二叉搜索树与双向链表题目:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 二叉树结点的定义如下:struct BinaryTreeNode{ int m_nValue; BinaryTreeNode* m_pLeft; BinaryTreeNode*

2016-11-05 11:14:53 487

原创 剑指Offer(面试题25~26)

面试题25:二叉树中和为某一值的路径题目:输入一棵二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。二叉树结点的定义如下:struct BinaryTreeNode{ int m_nValue; BinaryTreeNode* m_pLeft; BinaryTre

2016-11-05 10:14:20 386

原创 剑指Offer(面试题22~24)

面试题22:栈的压入、弹出序列题目:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1、2、3、4、5是某栈的压入顺序,序列4、5、3、2、1是该压栈序列对应的一个弹出序列,但4、3、5、1、2就不可能是该栈序列的弹出序列。判断一个序列是不是栈的弹出序列的规律:如果下一个弹出的数字刚好是栈顶数字,那么直接弹出。如果下一个弹出的

2016-11-05 08:37:04 527

原创 剑指Offer(面试题19-20)

面试题19:二叉树的镜像题目:请完成一个函数,输入一个二叉树,该函数输出它的镜像。 二叉树结点的定义如下:struct BinaryTreeNode{ int m_nValue; BinaryTreeNode* m_pLeft; BinaryTreeNode* m_pRight;}; 程序如下:void MirrorRecursively(Bi

2016-11-05 07:26:07 492

原创 剑指Offer(面试题19~23)

面试题19:二叉树的镜像题目:请完成一个函数,输入一个二叉树,该函数输出它的镜像。 二叉树结点的定义如下:struct BinaryTreeNode{ int m_nValue; BinaryTreeNode* m_pLeft; BinaryTreeNode* m_pRight;}; 求一棵树的镜像的过程:先前序遍历这棵树的每

2016-11-04 19:22:24 336

原创 剑指Offer(面试题14-18)

面试题14:调整数组顺序使奇数位于偶数前面题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组后半部分。void Reorder(int* pData,unsigned int length,bool (*func)(int)){ if(pData == NULL || length == 0) return;

2016-11-04 16:00:54 340

原创 剑指Offer(面试题11-13)

面试题11:数值的整除次方题目:实现函数double Power(double base,int exponent),求base的exponent次方。不得使用库函数,同时不需要考虑大数问题。 解析:当指数为负数的时候,可以先对指数求绝对值,然后算出次方的结果之后再取倒数。既然有求倒数,我们很自然就要想到有没有可能对0求倒数。当底数(base)为0时指数是负数的时候,如果不做特殊处理,就会出现对0

2016-11-04 15:54:16 440

原创 剑指Offer(面试题8~10)

查找和排序都是程序设计中常用的算法。查找相对而言较为简单,不外乎顺序查找、二分查找、哈希表查找和二叉排序树查找。 实现快速排序算法的关键在于先在数组中选择一个数字,接下来把数组中的数字分为两个部分,比选择的数字小的数字移到数组的左边,比选择的数字打的数字移到数组的右边。这个函数可以如下实现:int partition(int data[],int length,int start,int end)

2016-11-04 11:25:49 338

原创 剑指Offer(面试题6~7)

面试题6:重建二叉树 题目:输入某二叉树的前序和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。假如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6}。二叉树结点的定义如下:struct BinaryTreeNode{ int m_nValue; BinaryT

2016-11-04 10:49:14 338

原创 剑指Offer(面试题3~5)

面试题3:二维数组中的查找题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。通过分析发现规律:首先选取数组中右上角的数字。如果该数字等于要查找的数字,查找过程结束;如果该数字大于要查找的数字,剔除这个数字所在的列;如果该数字小于要查找的数字,剔除这个数组所在的行。也就是说如果要查

2016-11-04 09:41:01 477

转载 算法:图解最小生成树之克鲁斯卡尔(Kruskal)算法

算法基本思想:设无向连通网为G=(V, E),令G的最小生成树为T=(U, TE),其初态为U=V,TE={ },然后,按照边的权值由小到大的顺序,考察G的边集E中的各条边。若被考察的边的两个顶点属于T的两个不同的连通分量,则将此边作为最小生成树的边加入到T中,同时把两个连通分量连接为一个连通分量;若被考察边的两个顶点属于同一个连通分量,则舍去此边,以免造成回路,如此下去,当T中的连通分量个数为1时

2016-11-02 16:35:35 2421

转载 算法:图解最小生成树之普里姆(Prim)算法

1)算法的基本思想: 普里姆算法的基本思想:普里姆算法是一种构造最小生成树的算法,它是按逐个将顶点连通的方式来构造最小生成树的。从连通网络N = { V,E }中的某一顶点u0出发,选择与它关联的具有最小权值的边(u0, v),将其顶点加入到生成树的顶点集合U中。以后每一步从一个顶点在U中,而另一个顶点不在U中的各条边中选择权值最小的边(u,v),把该边加入到生成树的边集TE中,把它的顶点加入到集

2016-11-02 16:09:53 5552

原创 面试题——操作系统

例题1:试解释操作系统原理中的作业、进程、线程、管程各自的定义。答:作业:用户在一次解题或一个事务处理过程中要求计算机系统所做工作的集合。包括用户程序、所需要的数据及控制命令。作业是由一系列有序的步骤组成的。 进程:一个程序在一个数据集合上的一次运行过程。所以一个程序在不同数据集合上运行,乃至一个程序在同样数据集合上的多次运行都是不同的进程。 线程:线程是进程中的一个实体,是被系统独立调度和执行

2016-11-02 09:20:47 1003

转载 数据结构:字符串的基本操作

字符串(string)是由0个或多个字符组成的有限序列。一般使用顺序存储结构,末尾以’\0’表示结束,但不计入字符串的长度。 示例程序:(改编自《大话数据结构》#include<iostream>using namespace std;#define MAXSIZE 20typedef char String[MAXSIZE + 1]; //以'\0'结尾/* 生成一个串*/bool

2016-11-01 21:26:10 4890 1

转载 数据结构:队列的链式存储结构

队列的链式存储结构,其实就是线性表的单链表,只不过它只能尾进头出而已,我们把它简称为链队列。为了操作上的方便,我们将队头指针指向链队列的头节点,而队尾指针指向终端节点。空队列时,front和rear都指向头节点。 示例程序:(改变自《大话数据结构》)#include<iostream>using namespace std;typedef int ElemType;typedef struc

2016-11-01 21:21:49 446

转载 数据结构:队列的顺序存储结构(循环队列)

队列(Queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。是一种先进先出的线性表(FIFO)。允许插入的一端称为队尾,允许删除的一端称为队头。我们在《栈的顺序存储结构》中发现,栈操作的top指针在Push时增大而在Pop时减小,栈空间是可以重复利用的,而队列的front、rear指针都在一直增大,虽然前面的元素已经出队了,但它所占的存储空间却不能重复利用。但大多数程序并不是这样使

2016-11-01 21:14:39 3191

转载 数据结构:栈的链式存储结构

当单链表限定只能在头部进行插入和删除操作的时候,即为链栈,一般我们会将单链表的头指针和栈的栈顶指针top合二为一,通常对链栈来说,是不需要头节点的,因为我们维护了栈顶指针。对于链栈来说,基本不存在栈满的情况,除非内存已经没有可以使用的空间,对于空栈来说,链表原定义是头指针指向空,那么链栈的空其实就是top = = NULL的时候。 示例代码:#include <iostream>using

2016-11-01 20:58:26 483

转载 数据结构:两栈共享存储空间

数组有两个端点,两个栈有两个栈底,让一个栈的栈底为数组的始端,即下标为0处,另一个栈为栈的末端,即下标为数组长度n-1处。这样,如果两个栈增加元素,就是两端点向中间延伸。当top1 + 1 == top2 的时候为栈满。 示例代码:(改编自《大话数据结构》)#include <iostream>using namespace std;#define MAXSIZE 20typedef in

2016-11-01 20:38:45 600

转载 数据结构:栈的顺序存储结构

栈(stack)是限定在表尾进行插入和删除操作的线性表。我们把允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom),栈又称为后进先出(Last In First Out)的线性表,简称LIFO结构。 示例程序:(改编自《大话数据结构》)#include <iostream>using namespace std;#define MAXSIZE 20typedef int

2016-11-01 20:33:16 427

转载 数据结构:静态链表

首先我们让数组的元素都是由两个数据域组成,data和cur。也就是说,数组的每一个下标都对应一个data和一个cur。 数据域data用来存放数据元素,也就是通常我们要处理的数据;而游标cur相当于单链表中的next指针, 存放该元素的后继在数组中的下标。我们把这种用数组描述的链表叫做静态链表。 数组的第一个元素,即下标为0的元素的cur就存放备用链表的第一个结点的下标;而数组的最后一个元素的

2016-11-01 20:24:10 861

转载 数据结构:线性表之链式存储结构

为了表示每个数据元素ai与其直接后继元素ai+1之间的逻辑关系,对数据ai,除了存储其自身的信息之外,还需存储一个指示其直接后继的信息(即直接后继的存储位置)。这两部分信息组成数据元素ai的存储映像,称为结点(Node)。N个结点链结成一个链表,即为线性表(a1,a2,…,an)的链式存储结构,因为此链表的每个节点中只包含一个指针域,所以叫做单链表。我们把链表中的第一个结点的存储位置叫做头指针,,为

2016-11-01 20:06:05 360

ORB an efficient alternative to SIFT or SURF.pdf

ORB(Oriented FAST and Rotated BRIEF)是一种快速特征点提取和描述的算法。这个算法是由Ethan Rublee, Vincent Rabaud, Kurt Konolige以及Gary R.Bradski在2011年一篇名为“ORB:An Efficient Alternative to SIFTor SURF”的文章中提出。ORB算法分为两部分,分别是特征点提取和特征点描述。特征提取是由FAST(Features from Accelerated Segment Test)算法发展来的,特征点描述是根据BRIEF(Binary Robust IndependentElementary Features)特征描述算法改进的。

2017-12-30

Leetcode题全解

leetcode习题的C++语言实现,LeetCode is a platform for preparing technical coding interviews. Pick from an expanding library of more than 450 questions, code and submit your solution .

2017-12-30

计算机网络

本书是当前世界上最为流行的计算机网络教科书之一,采用了作者独创的自顶向下的方法来讲授计算机网络的原理及其协议,即从应用层协议开始沿协议栈向下讲解,强调应用层范例和应用编程接口,使读者尽快进入每天使用的应用程序环境之中进行学习和“创造”。本书的讲解以因特网为例,学以致用;注重教学法,深入浅出地重点讲解计算机网络的基本原理。

2015-10-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除