码迷,mamicode.com
首页 >  
搜索关键字:堆排序 完全二叉树    ( 2516个结果
堆排序
堆排序...
分类:其他好文   时间:2014-09-30 06:45:42    阅读次数:234
java实现 数据结构之8大排序
现在来写写数据结构,感觉还是有点陌生,应该多练练,有需要的朋友可以看看。 * 冒泡排序 * 插入排序 * 选择排序 * shell排序 * 堆排序 * 归并排序 * 二叉树排序 * 快速排序...
分类:编程语言   时间:2014-09-29 19:23:01    阅读次数:310
排序-选择排序
选择排序基本思想:每趟从待排序的记录中选出关键字最小的记录,顺序放在已排好序的最后,直到全部记录排序完毕直接选择排序:1)基本思想:是一种简单直观的排序,从待排序的记录序列中选择关键码的最小(或最大)的记录并将它与序列中的第一个记录交换位置;然后从不包括第一..
分类:其他好文   时间:2014-09-28 20:07:28    阅读次数:287
给定一颗完全二叉树,给每一层添加上next的指针,从左边指向右边
给你机会发出声音,但是不给你机会证明高层的决定是错的RT: 时间复杂度O(n) 空间复杂度O(1)原理就是有指针指向父节点和当前的节点,左孩子必指向右孩子,右孩子必指向父节点的下一个节点的左孩子void Solution::yahooTree(TreeNode *root){ if (root...
分类:其他好文   时间:2014-09-28 15:36:12    阅读次数:201
堆排序(代码1)
#include #include void build_heap(int data[], int);void adjust_heap(int data[], int);void heap_sort(int data[], int);int sub_max_heap(int data[], int,...
分类:其他好文   时间:2014-09-28 13:18:02    阅读次数:163
堆排序(代码2)
1 #include 2 #include 3 4 void build_heap(int data[], int); 5 void adjust_heap(int data[], int); 6 void heap_sort(int data[], int); 7 int s...
分类:其他好文   时间:2014-09-28 13:16:22    阅读次数:222
白话经典算法系列之七 堆与堆排序
堆排序与高速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法。学习堆排序前,先解说下什么是数据结构中的二叉堆。二叉堆的定义二叉堆是全然二叉树或者是近似全然二叉树。二叉堆满足二个特性:1.父结点的键值总是大于或等于(小于或等于)不论什么一个子节点的键值。2.每一个结点的左子树和右...
分类:其他好文   时间:2014-09-28 12:59:02    阅读次数:165
编程判断一个树是完全二叉树(使用层次遍历实现)
完全二叉树:一棵具有N个节点的二叉树的结构与满二叉树的前N个节点的结构相同 如何判断一个树是完全二叉树 可以使用层序遍历,只需2个步骤 第一步:如果遍历到一个节点只有右子树没有左子树,则不是完全二叉树 第二部:如果遍历到一个节点只有左子树,那么后面遍历到的节点必须是叶子节点,否则也不是完全二叉树 排除以上两种情况,则树是完全二叉树 核心代码: //层序遍历 int L...
分类:其他好文   时间:2014-09-27 21:59:03    阅读次数:401
堆排序的实现(联发科子公司创发科技笔试)及判断单向链表的环
堆排序的实现(联发科子公司创发科技笔试)及判断单向链表的环...
分类:其他好文   时间:2014-09-26 20:28:08    阅读次数:153
一篇能够加深对胜者树和败者树理解的文章
胜者树和败者树都是完全二叉树,是树形选择排序的一种变型。每个叶子结点相当于一个选手,每个中间结点相当于一场比赛,每一层相当于一轮比赛。 不同的是,胜者树的中间结点记录的是胜者的标号;而败者树的中间结点记录的败者的标号。 胜者树与败者树可以在log(n)的时间内找到最值。任何一个叶子结点的值改变后,利用中间结点的信息,还是能够快速地找到最值。在k路归并排序中经常用到。...
分类:其他好文   时间:2014-09-25 23:56:08    阅读次数:279
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!