随笔分类 - Java数据结构与算法
Java数据结构与算法(13) - ch06递归(归并排序)
摘要:时间为O(N*logN)。归并排序的一个缺点是它需要在存储器中有另一个大小等于被排序的数据项数目的数组。归并两个有序的数组。利用递归,不断的将数组进行二分法排序,然后进行归并即可。
阅读全文
Java数据结构与算法(12) - ch06递归(回文anagram)
摘要:{TODO}
阅读全文
Java数据结构与算法(11) - ch06递归(二分法查找)
摘要:{TODO}
阅读全文
Java数据结构与算法(10) - ch05链表实现队列(Link Queue)
摘要:{TODO}
阅读全文
Java数据结构与算法(9) - ch05链表实现栈(Link Stack)
摘要:{TODO}
阅读全文
Java数据结构与算法(8) - ch05链表排序(Sorted List)
摘要:{TODO}
阅读全文
Java数据结构与算法(7) - ch05双向链表(Double List)
摘要:{TODO}
阅读全文
Java数据结构与算法(5) - ch05链表(LinkList)
摘要:双端链表与传统链表非常相似,但是它有一个新增的特性:即对最后一个链节点的引用,就像对第一个连接点的引用一样。注意与双向链表进行区别。
阅读全文
Java数据结构与算法(4) - ch04队列(Queue和PriorityQ)
摘要:队列: 先进先出(FIFO)。优先级队列: 在优先级队列中,数据项按照关键字的值有序,关键字最小的数据项总在对头,数据项插入的时候会按照顺序插入到合适的位置以确保队列的顺序,从后往前将小于插入项的数据项后移。在图的最小生成树算法中应用优先级队列。示例代码:package chap04.Queue;c...
阅读全文
Java数据结构与算法(3) - ch04栈(栈和转置)
摘要:栈的基本特性是后进先出,最简单的用途是用于转置,还有其他诸如括号匹配,中序表达式(A+B*(C-D/(E+F)) --> ABCDEF+/-*+)和后续表达式(345+*612+/- --> 3*(4+5)-6/(1+2))互换等高级用法。示例代码:package chap04.Reverse;im...
阅读全文
Java数据结构与算法(2) - ch03排序(冒泡、插入和选择排序)
摘要:排序需要掌握的有冒泡排序,插入排序和选择排序。时间为O(N*N)。冒泡排序: 外层循环从后往前,内存循环从前往后到外层循环,相邻数组项两两比较,将较大的值后移。插入排序: 从排序过程的中间开始(程序从第二个数组项开始a[1]),此时队列已经拍好了一部分。此时,将后边的数组项一次插入到已经排好序的部分...
阅读全文
Java数据结构与算法(1) - ch02有序表(OrderedArray)
摘要:有序表需要掌握的插入方法,删除方法和二分法查找方法。插入方法: 从前往后找到比要插入的值大的数组项,将该数组项及之后的项均后移一位(从最后一项起依次后移),最后将要插入的值插入当前数组项。删除方法: 从前往后找到要删除的项,将该数组项之后的项均前移一位(从该数组项后一项起依次往前移);二分法查找: ...
阅读全文
浙公网安备 33010602011771号