队列: 先进先出(FIFO)。优先级队列: 在优先级队列中,数据项按照关键字的值有序,关键字最小的数据项总在对头,数据项插入的时候会按照顺序插入到合适的位置以确保队列的顺序,从后往前将小于插入项的数据项后移。在图的最小生成树算法中应用优先级队列。示例代码:package chap04.Queue;c...
分类:
编程语言 时间:
2014-10-14 17:49:59
阅读次数:
230
栈的基本特性是后进先出,最简单的用途是用于转置,还有其他诸如括号匹配,中序表达式(A+B*(C-D/(E+F)) --> ABCDEF+/-*+)和后续表达式(345+*612+/- --> 3*(4+5)-6/(1+2))互换等高级用法。示例代码:package chap04.Reverse;im...
分类:
编程语言 时间:
2014-10-14 17:38:38
阅读次数:
229
排序需要掌握的有冒泡排序,插入排序和选择排序。冒泡排序: 外层循环从后往前,内存循环从前往后到外层循环,相邻数组项两两比较,将较大的值后移。插入排序: 从排序过程的中间开始(程序从第二个数组项开始a[1]),此时队列已经拍好了一部分。此时,将后边的数组项一次插入到已经排好序的部分队列中。选择排序: ...
分类:
编程语言 时间:
2014-10-14 17:28:18
阅读次数:
188
有序表需要掌握的插入方法,删除方法和二分法查找方法。插入方法: 从前往后找到比要插入的值大的数组项,将该数组项及之后的项均后移一位(从最后一项起依次后移),最后将要插入的值插入当前数组项。删除方法: 从前往后找到要删除的项,将该数组项之后的项均前移一位(从该数组项后一项起依次往前移);二分法查找: ...
分类:
编程语言 时间:
2014-10-14 17:13:38
阅读次数:
206
【笔记】冒泡,选择,插入三者的排序算法时间复杂度均是O(N2)级,排序主要是执行比较和交换(复制)操作,相对来说:选择排序较冒泡排序减少了交换次数;而插入排序左边是一直保持有序的。【参考书籍】Java数据结构与算法 以下是源代码,针对数组的操作,存取元素为基本类型: 1 import java.u....
分类:
编程语言 时间:
2014-09-28 13:06:32
阅读次数:
245