数据结构与算法
娃娃救葫芦爷
学习编程ing
展开
-
算法-Kruskal算法
package com.chb.Kruskal;import java.util.Arrays;public class KruskalCase { private int edgeNum; //边的个数 private char[] vertexs; //顶点数组 private int[][] matrix; //邻接矩阵 //使用 INF 表示两个顶点不能连通 p...原创 2019-10-19 17:38:37 · 530 阅读 · 0 评论 -
算法-Prim算法
package com.chb.Prim;import java.util.Arrays;public class Prim { public static void main(String[] args) { //测试看看图是否创建ok char[] data = new char[]{'A','B','C','D','E','F','G'}; int verxs ...原创 2019-10-19 16:56:48 · 228 阅读 · 0 评论 -
算法-贪心算法
package com.chb.greedy;import java.util.ArrayList;import java.util.HashMap;import java.util.HashSet;public class greedy { public static void main(String[] args) { // 创建广播电台,放入到Map Hash...原创 2019-10-19 16:22:08 · 188 阅读 · 0 评论 -
算法-KMP算法
package com.chb.KMP;public class Baoli { public static void main(String[] args) { // 测试暴力匹配算法 String str1 = "硅硅谷 尚硅谷你尚硅 尚硅谷你尚硅谷你尚硅你好"; String str2 = "尚硅谷你尚硅你"; int index = violenceMatch(s...原创 2019-10-19 15:18:44 · 153 阅读 · 0 评论 -
算法-动态规划算法
package com.chb.DP;public class Pack01 { public static void main(String[] args) { int[] w = { 1, 4, 3 }; int[] val = { 1500, 3000, 2000 }; int C = 4; int n = w.length;// 物品的个数 // 创建二...原创 2019-10-19 14:48:05 · 345 阅读 · 0 评论 -
算法-分治算法
package com.chb.fenzhi;public class Hanio { public static void main(String[] args) { fenzhi(3, 'A', 'B', 'C'); } public static void fenzhi(int num,char a,char b,char c) { if(num==1) { ...原创 2019-10-19 14:03:39 · 159 阅读 · 0 评论 -
算法-二分查找(非递归)
package com.chb.erfen;public class binarysearch { public static void main(String[] args) { int a[]= {1,3, 8, 10, 11, 67, 100}; int index=search(a,10); System.out.println(index); } public ...原创 2019-10-19 13:49:42 · 162 阅读 · 0 评论 -
数据结构-图
图:表示多对多的关系图的两种表示方式:**二维数组(邻接矩阵)**表示,会浪费空间;**链表(邻接表)**表示,由数组+链表组成,不会浪费空间。1、图的创建package com.chb.graph;import java.util.ArrayList;import java.util.Arrays;public class Graph { private ArrayList&l...原创 2019-10-18 18:09:07 · 105 阅读 · 0 评论 -
数据结构-多路查找树(了解)
原创 2019-10-17 22:22:30 · 119 阅读 · 0 评论 -
数据结构-平衡二叉树
是 ,是,不是将一棵树转为平衡二叉树的方法:左旋转、右旋转package com.chb.AVI;public class AVLTreeDemo { public static void main(String[] args) { //int[] arr = {4,3,6,5,7,8};//左旋转就能解决 //int[] arr = { 10, 12, 8, 9, 7, ...原创 2019-10-17 22:01:33 · 101 阅读 · 0 评论 -
数据结构-二叉排序树
package com.chb.binarysorttree;public class BinarySortTreeDemo { public static void main(String[] args) { int[] arr = { 7, 3, 10, 12, 5, 1, 9, 2 }; BinarySortTree binarySortTree = new Binary...原创 2019-10-17 21:30:42 · 103 阅读 · 0 评论 -
数据结构-树结构的实际应用
package com.chb.tree;import java.util.Arrays;public class HeapSort { public static void main(String[] args) { // 要求将数组进行升序排序 int arr[] = { 4, 6, 8, 5, 9 }; System.out.println("排序前=" + Ar...原创 2019-10-17 21:11:44 · 1507 阅读 · 0 评论 -
数据结构-树的基础部分
package com.chb.tree;public class BinaryTreeDemo { public static void main(String[] args) { //需要创建一颗二叉树 BinaryTree binaryTree=new BinaryTree(); //创建需要的节点 HeroNode root = new HeroNode(1...原创 2019-10-16 20:46:56 · 94 阅读 · 0 评论 -
数据结构-哈希表
哈希表:数组+链表 ,数组+二叉树当有大量数据时,在不能调用数据库的情况下,可以用哈希表来进行数据缓存package com.chb.hashtab;import java.util.Scanner;public class HashTabDemo { public static void main(String[] args) { // 创建哈希表 HashTab h...原创 2019-10-16 16:35:39 · 100 阅读 · 0 评论 -
算法-查找算法
package com.chb.chazhao;//线性查找public class xianxing { public static void main(String[] args) { int a[]= {5,3,1,4,2}; int index=search(a,1); System.out.println(index); } public static int s...原创 2019-10-16 16:00:36 · 202 阅读 · 0 评论 -
算法-排序算法
package com.chb.sort;import java.util.Arrays;public class maopao { public static void sort(int[]arr) { boolean flag=false;//优化操作,如果已经有序,就不需要比较 for (int i = 0; i < arr.length-1; ...原创 2019-10-16 08:48:29 · 85 阅读 · 0 评论 -
数据结构-递归
package com.chb.digui;public class test { public static void main(String[] args) { test1(4); int sum=f(5); System.out.println(sum); } public static void test1(int n) { if(n>2) { te...原创 2019-10-15 19:39:26 · 92 阅读 · 0 评论 -
数据结构-栈
package com.chb.Stack;public class testStack { public static void main(String[] args) { ArrayStack stack=new ArrayStack(10); stack.push(1); stack.push(2); stack.push(3); stack.push(4)...原创 2019-10-15 18:23:11 · 92 阅读 · 0 评论 -
数据结构-链表
package com.chb.lianbiao;public class danlianbiao { public static void main(String[] args) { SingleLinkedList list=new SingleLinkedList(); list.add2(new HeroNode(1,"宋江","及时雨")); list.add2(...原创 2019-10-15 10:39:42 · 103 阅读 · 0 评论 -
数据结构-队列
package com.chb.Queue;public class test1 { public static void main(String[] args) { ArrayQueue queue=new ArrayQueue(3); queue.add(1); queue.add(2); queue.add(3); queue.show(); }}//使用...原创 2019-10-12 14:55:14 · 81 阅读 · 0 评论 -
数据结构-稀疏数组
package com.chb.xishu;public class xishuArray { public static void main(String[] args) { //创建一个原始数组11*11 //0:表示没有棋子,1表示黑子,2表示白子 int arr[][]=new int[11][11]; arr[1][2]=1; arr[2][3]=2; //...原创 2019-09-28 08:41:52 · 79 阅读 · 0 评论 -
数据结构-分类
数据结构包括线性结构和非线性结构。线性结构:1)特点是数据元素之间存在一对一的线性关系。2)线性结构有两种存储方式,即顺序存储和链式存储。3)顺序存储的线性表称为顺序表(数组),顺序表中的存储元素是连续的。4)链式存储的线性表称为链表,链表中的存储元素不一定连续,元素节点中存放数据元素以及相邻元素的地址信息。5)线性结构常见的有:数组,队列,链表,栈非线性结构:非线性结构包括:二维...原创 2019-09-28 07:59:56 · 175 阅读 · 0 评论