摘要:
数据结构:线性表之顺序表需求:实现线性表的数组方式实现,功能:实现数组表的增删改查实现:将各个功能单独封装到函数初始化:由于数据都不是在主函数中创建,出函数后无法使用。所以元素和元素集合(person and men)使用动态内存创建。增:将person结构体封装到men结构体中,以... 阅读全文
posted @ 2017-10-29 09:15
zhangwang010
阅读(228)
评论(0)
推荐(0)
摘要:
简单分析:归并排序是典型的用分治思想解决问题的算法, 其基本思想是: 有两个有序数组,从两个数组首端开始比较。将较大或较小的元素加入一个空数组中,同时在原数组中删除。剩下的元素如此重复。最后就将两个有序数组合并成一个有序数组了。这样的过程成为归并。与分治法结合在一起来考虑。如果不断递... 阅读全文
posted @ 2017-10-29 09:15
zhangwang010
阅读(108)
评论(0)
推荐(0)
摘要:
原理分析(升序)假定数组第一个数是有序的,从数组下标1开始遍历比较后面的数值。如果遍历到的数x小于排在它前面的数则交换他们,再比较x和x前面的数…直到x前面再也没有比它大的数了,这时x就移动到了有序队列的合适位置。上述比较称为插入。 《算法导论》里的比喻很合适:“插入排序就像玩扑克牌... 阅读全文
posted @ 2017-10-29 09:15
zhangwang010
阅读(81)
评论(0)
推荐(0)
摘要:
快速排序(1)快速排序是一种不稳定的原地交换排序(据说可以改进),其平均时间复杂度是 O(nlogn)。最坏情况下是O(n^2)。当数组已是有序或接近有序时,是最坏的情况。在示例算法中,总是选取当前块的第一个元素作为key,当数组已经有序时,一趟排序总是把数组分成一个元素和其他元素两... 阅读全文
posted @ 2017-10-29 09:15
zhangwang010
阅读(227)
评论(0)
推荐(0)
摘要:
堆排序堆排序是利用堆结构(特殊的完全二叉树)实现排序的算法,时间复杂度是O(nlogn)。堆排序不稳定。原理堆排序要构建一颗完全二叉树(存储在数组,详见: 二叉树的数组存储),这颗二叉树就是堆。堆有大堆和小堆两种(结构类似)。这里以大堆为例。 在最大堆中每个节点都比子节点大,根节点最... 阅读全文
posted @ 2017-10-29 09:15
zhangwang010
阅读(114)
评论(0)
推荐(0)
摘要:
AJAX 简单理解和应用这几天做web小项目,发现没有AJAX真不方便,总是刷新整个页面确实不方便。 AJAX: AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。 AJAX 不是新的编程语言,而是一种使用... 阅读全文
posted @ 2017-10-29 09:15
zhangwang010
阅读(258)
评论(0)
推荐(0)
摘要:
单链表实现 链表特点: 链表是指一个数据元素含有一个或多个指向另外一个数据元素的指针或引用。称这样的元素为节点。一条链上的节点,多形象。 链表结构的元素在内存中是分散存放的。不需要连续的存储空间。空间利用率较高。可以动态增加长度。 而由于元素是通过指针联系在一起的,所以插入和删除元素较快,只需要修改 阅读全文
posted @ 2017-10-29 09:15
zhangwang010
阅读(289)
评论(0)
推荐(0)
摘要:
双链表实现 双链表是在单链表的基础上增加一个指向前一个节点的指针。使节点持有指向它前后两个节点的指针。从而实现逆序遍历。 双链表的数据操作与单链表相差不大,只比单链表多修改一个指针,在插入和删除操作时要对首节点和最后一个节点特殊处理。具体实现见代码 结构体分析 先来看一下结构体的定义,如下,pers 阅读全文
posted @ 2017-10-29 09:15
zhangwang010
阅读(376)
评论(0)
推荐(0)
摘要:
答案是传值。传递给函数的是一个指针的复制品,将指针所指的地址copy一份传给函数。 先看一个错误例子 void create(treeLink *root){ root = newTreeNode(1); } void TreeLinkTest(){ treeLink *root = NULL; c 阅读全文
posted @ 2017-10-29 09:15
zhangwang010
阅读(197)
评论(0)
推荐(0)
摘要:
用链表实现栈结构栈结构简单介绍栈结构通俗来说是元素先进后出,就像一个水瓶,依次往里装东西,最先装进去的被压在下面,要出来时得先拿走上面压着的东西, 才能取出来。所以说栈是运算受限的线性表,因为栈只允许在表的一端进行增删。实现 本文使用单链表来实现栈结构。先构建一个带head 节点的... 阅读全文
posted @ 2017-10-29 09:15
zhangwang010
阅读(1905)
评论(0)
推荐(0)

浙公网安备 33010602011771号