
面试——数据结构+算法
WangRenFengzzZ
人生有些事不做可能没啥影响,但是那些事是做可能会影响的一生!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【排序】 堆排序
堆排序是基于堆(假设为大根堆)的特性来进行排序的方法, 其基本思想是:首先将待排序序列构造成一个堆,此时 ,选出堆中最大的元素即堆顶元素记录,然后将堆顶记录移走,并将剩余的记录再调整成堆,这样再次找出次大的记录,依此类推,直到堆中只有一个记录为止, 思路:1、用一个函数来堆调整,(i,为当前节点,j=i*2为当前节点的左孩子,(2*i)+1为当前节点的右孩子) ...原创 2019-04-04 17:19:00 · 194 阅读 · 0 评论 -
【排序】 起泡排序
核心代码: 从R【1】到R【n】; 从R【1】开始,到边界值bound处,每次比较当前位置和下一位的大小,大则交换, 每次循环的时候 bound==exchange; exchange==0;因为需要判断每次是否有交换,没交换则exchange不会变。 void BubbleSort(int r[], int n) { ...原创 2019-04-07 18:00:02 · 144 阅读 · 0 评论 -
【排序】 希尔排序
排序思想: void ShellSort(int r[], int n) //r[0]用作暂存单元 { int d,i,j; for(int d=n/2;d>=1;d/=2){ //增量d for(int i=d+1;i<=n;i++){ //在增量d得情况下 d+1才为第一个比较得位置 r[0]=r[i...原创 2019-04-07 21:14:34 · 151 阅读 · 0 评论 -
【排序】快速排序
对于一串数字 【23,13,35,6,19,50,28】 i j 一次划分:找到中间的值,在中间最合适的位置,左边的数都比他小,右边的数都比他大! if(i<j){ ...原创 2019-04-15 19:25:36 · 314 阅读 · 0 评论 -
【迪杰斯特拉算法】
伪代码描述思路: 存储结构:dist[ ] / path[ ] /vist[ ] 1、初始化-> dist[ i ]=dege[v] [i] / path[ ]=**/vist[ ] = 0 2、从源点出发(初始化minA=INF),将没加入集合的每一个点的距离与minA进行比较,vist...原创 2019-08-18 11:44:35 · 357 阅读 · 0 评论