data structure
mnmlist_tata
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
希尔排序的实现
希尔排序的实质就是分组插入排序,该方法又称缩小增量排序,因DL.Shell于1959年提出而得名。该方法的基本思想是:先将整个待排元素序列分割成若干个子序列(由相隔某个“增量”的元素组成的)分别进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。因为直接插入排序在元素基本有序的情况下(接近最好情况),效率是很高原创 2014-09-30 10:02:56 · 795 阅读 · 0 评论 -
二叉树递归创建和递归遍历
/*tips:最后返回指针很重要 bt root=NULL;root=Create(root);*/#includeusing namespace std;typedef struct Btree{ char data; Btree *lchild,*rchild;}Btree,*bt;bt Create(bt T);void DisplayTree(bt T);void mai原创 2014-03-23 10:28:42 · 904 阅读 · 0 评论 -
二叉树的先序、中序、后序非递归遍历的实现
//好久不用C++许多语法细节都忘记了...费了九牛二虎之力还搞的那么复杂,Anyway,下午把二叉树的先序、中序、后序的非递归遍历给写出来了,还是有点成绩的。。。//先序遍历,入栈的时候遍历。中序遍历,出栈的时候遍历元素。先序遍历和中序遍历真的就只有这么点区别二叉树的创建#include#includeusing namespace std;typedef原创 2015-01-08 16:50:35 · 1049 阅读 · 0 评论 -
leetcode_3_Longest Substring Without Repeating Characters
本题要求的是字符串的非重复最长子串,为了在最长的时间内判断子串是否有重复,很自然地就想到了HashSet(当然还有更好的方法,我女朋友就用数组进行判重),从头开始遍历直到出现重复的字符为止,将非重复的字符数目存储起来,并查出从开始处到重复字符第一次出现的地方,删去HashSet中从开始到重复字符第一次出现的地方的所有元素,并将count减去从开始处至重复字符第一次出现的地方的个数,然后从出现重复字符的下一个字符开始统计。将字符串遍历一遍,然后统计出最长的子串所含有的字符个数即可。 这题最容易原创 2015-01-27 19:53:45 · 884 阅读 · 0 评论 -
leetcode_6_ZigZag Conversion
思路:想了好久,思维总是局限在二维数组,找字符串的长度和二维数组的行列数之间的某种联系,想了好久,没有思路。然后,然后就上网看了一下,有一种思路说是用字符串数组即可,就想到了StringBuilder,直接Append多好,这得比二维数组高级多少啊!然后就用StringBuilder做这道题了。原创 2015-01-28 08:23:09 · 971 阅读 · 0 评论
分享