2018年10月11日
摘要: 快速排序: 阅读全文
posted @ 2018-10-11 23:23 朱古力88 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 冒泡排序: 比较相邻两个元素的关键字值,如果反序,则交换。若按升序排序,每一趟将被扫描的数据序列中的最大元素交换到最后位置,就像气泡从水里冒出来一样。 复杂度分析: 数据的初始序列已排序,只需要一趟扫描,比较次数为n,移动次数为0,时间复杂度是O(N) 数据的初始序列反序排序,需要进行n-1趟扫描, 阅读全文
posted @ 2018-10-11 23:15 朱古力88 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 选择排序:第一趟从n个元素的数据序列中选出关键字最小(或者最大)的元素并放到最前(最后)的位置,下一趟再从n-1个元素中选出最大(最小)的元素并放到次前(后)位置,依次类推,经过n-1趟完成排序。 用java实现如下: 阅读全文
posted @ 2018-10-11 22:42 朱古力88 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 归并两个已排序的数组序列,归并之后的数组序列还是有序的 用java实现如下: 阅读全文
posted @ 2018-10-11 19:58 朱古力88 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 二分查找又称折半查找,是针对有序顺序表的查找,前提:数据是顺序存储的,已经按照关键词进行升序排序。查找成功返回索引值,查找不成功返回-1。 下面用java来实现二分查找算法: 阅读全文
posted @ 2018-10-11 19:33 朱古力88 阅读(201) 评论(0) 推荐(0) 编辑