
数据结构
每天码一点
这个作者很懒,什么都没留下…
展开
-
07-贪心算法
/** * 贪心算法 * <p> * 有 以下这么多电台, 选择能够覆盖所有电台且选择最少的实现方式 * K1 "北京", "上海", "天津" * K2 "广州", "北京", "深圳" * K3 "成都", "上海", "杭州" * K4 "上海", "天津" * K5 "杭州", "大连" */public class TanXin { public static void main(String[] args) { // 电台集合原创 2021-11-16 18:43:12 · 376 阅读 · 0 评论 -
06-数据结构之图,邻接表,“普里姆算法“找到最短路径
应用场景-修路问题1.有7个村庄(A, B, C, D, E, F, G) ,现在需要修路把7个村庄连通2. 各个村庄的距离用边线表示(权) ,比如 A – B 距离 5公里3. 问:如何修路保证各个村庄都能连通,并且总的修建公路总里程最短?思路: 将10条边,连接即可,但是总的里程数不是最小.正确的思路,就是尽可能的选择少的路线,并且每条路线最小,保证总里程数最少./** * 图的结构的实现主要是 领接矩阵 和邻接表, 矩阵存在浪费很多空间 , 不是特别好的, 所以我们使用邻接表 实现原创 2021-11-16 18:39:30 · 501 阅读 · 0 评论 -
05-基数排序内存版本,磁盘版本
/** * 基数排序是一个稳定性的排序方法, 非常的快, * 但是有一个缺点就是数据量过大的时候就会出现栈溢出,内存不足的的情况 * 所以写了一个磁盘排序, 请对元数据处理的时候要备份, 要不然元数据就覆盖了 */public class TongSort { public static final String filePrefix = "/Users/fast/Desktop/sortTest"; public static int maxRandomNum = 30000原创 2021-11-11 20:31:35 · 96 阅读 · 0 评论 -
04-逆波兰后缀表达式算法
在这里插入图片描述/** * 逆波兰表达式 */public class NiBoLanCalculatorDemo { public static void main(String[] args) { String str = "1+((2+3)*4)-5"; List<String> list = toArray(str); List<String> bolanList = listToBoLan(list);原创 2021-11-08 21:31:50 · 131 阅读 · 0 评论 -
03-稀疏算法
public static void main(String[] args) throws Exception { int[][] arr = new int[11][11]; // 第一行的 第二列是1 arr[1][2] = 1; arr[2][3] = 2; int[][] xs = toXiShu(arr); int[][] arr2 = toNormal(xs); System.out原创 2021-11-08 17:47:32 · 151 阅读 · 0 评论 -
01-java数组实现队列
public class ArrQueueDemo1 { public static void main(String[] args) throws Exception { }}class ArrayQuere { private int maxSize; private int front; private int rear; private int[] arr; public ArrayQuere(int maxSize) {原创 2021-11-07 16:15:00 · 83 阅读 · 0 评论 -
02-单链表反转, 逆向打印,排序等
求出单链表数据总数?class Persons implements Comparable<Persons>{ public int no; public String name; public String nickName; public Persons next; public Persons(int no, String name, String nickName) { this.no = no; this..原创 2021-11-07 21:05:46 · 102 阅读 · 0 评论