- 博客(6)
- 收藏
- 关注
原创 剑指offer(从尾到头打印链表)
思路一: 遍历链表,将节点依次压入栈中。接着将栈中元素依次弹出打印即可; 思路二:使用递归的方法,先递归打印后面的节点再打印本节点。
2016-03-30 16:48:19 217
原创 求字符串的最长回文子串
#include #include using namespace std; char* change(char *s){//插入特殊符号 int l=strlen(s); int len=l*2+2; char *p=new char[len]; p[0]='$'; p[1]='#'; int j=2; for(int i=0;s[i]!='\0';++i){ p[j++]
2016-03-16 22:30:22 287
原创 排序算法
//插入排序 void f(vector &a){ int i,j; for(i=1;i<a.size();++i){ int temp=a[i]; for(j=i;j>0;j--) if(a[j-1]>temp)//如果前面的数值大于temp,则后移。 a[j]=a[j-1]; else break; a[j]=temp;//将temp插入合适的位置
2016-03-15 21:32:56 260
原创 剑指0ffer(替换空格)
题目描述 请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。void replaceSpace(char *str,int length) { if(str == NULL || length <= 0) return; int i
2016-03-14 20:18:12 395
原创 剑指offer(二维数组中的查找)
题目描述:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 class Solution { public: bool Find(vector > array,int target) { int m=array.size(); //行数 i
2016-03-14 20:07:22 220
原创 算法导论(红黑树)
一棵二叉查找树如果满足下面的红黑性质,则为一棵红黑树: (1)每个结点要么是红的,要么是黑的; (2)根结点是黑的; (3)每个叶结点,即空结点(NIL)是黑的; (4)如果一个结点是红的,则它的两个儿子都是黑的; (5)对每个结点,从该结点到其子孙叶结点的所有路径上包含相同的黑结点; 插入 插入的结点z
2016-03-14 19:25:20 345
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人