数据结构
蓝白咖啡
The sole certainty is that tomorrow will surprise us all.
展开
-
顺序存储的二叉树的遍历
package DateStructure;public class ArrayBinaryTree { int[] data; public ArrayBinaryTree(int[] data) { this.data = data; } public void frontShow(){ frontShow(0); ...原创 2020-04-24 18:07:36 · 259 阅读 · 0 评论 -
顺序存储的二叉树的概述
1. 顺序存储的二叉树通常情况下只考虑完全二叉树。2. 第n个元素的左子节点是:2*n+1。3. 第n个元素的右子节点是:2*n+2。4. 第n个元素的父节点是:(int) (n-1)/2。...原创 2020-04-24 16:43:07 · 129 阅读 · 0 评论 -
二叉树的概述
二叉树:任何一个节点的子节点数量不超过2。二叉树的子节点分左节点和右节点。满二叉树:所有叶子节点都在最后一层,而且节点的总数为:2^n-1,且n是树的高度(树的深度)。完全二叉树:所有叶子结点都在最后一层或倒数第二层,且最后一层的叶子节点在左边连续,倒数第二层的叶子结点在右边连续。...原创 2020-04-22 14:02:15 · 137 阅读 · 0 评论 -
树
根节点:树的一个组成部分,也叫树根。所有非空的二叉树中,都有且仅有一个根结点简介。它是同一棵树中除本身外所有结点的祖先,没有父结点。双亲节点:B 结点是A 结点的孩子,则A结点是B 结点的双亲(可理解为雌雄同体)。兄弟结点:同一双亲的孩子结点。堂兄结点:同一层上结点。孩子结点(child node):结点的子树的根称为该结点的孩子。子孙结点:以某结点为根的子树中任一结点都称为该结点的子孙...原创 2020-04-22 13:37:18 · 111 阅读 · 0 评论 -
排序算法之希尔排序
package TestTwo.demo4;import java.util.Arrays;public class ShellSort { public static void main(String[] args) { int[] array = new int[]{2, 4, 6, 8, 8, 7, 2, 9, 8, 9}; System.ou...原创 2020-04-03 19:01:43 · 113 阅读 · 0 评论 -
排序算法之选择排序
package TestTwo.demo4;import java.util.Arrays;public class SelectSort { public static void main(String[] args) { int[] arr = new int[]{3, 432, 453, 5, 5, 46, 234, 5, 2, 5, 26, 35, 7, 3...原创 2020-03-31 22:02:26 · 132 阅读 · 0 评论 -
排序算法之插入排序
package TestTwo.demo4;import java.util.Arrays;public class InsertSort { public static void main(String[] args) { int[] arr = new int[]{4, 32, 1, 4, 5, 6, 32, 1, 7}; insertSort...原创 2020-03-31 15:00:17 · 124 阅读 · 0 评论 -
快速排序
package TestTwo.demo4;import java.util.Arrays;public class QuickSort { public static void main(String[] args) { int[] array = new int[]{2, 3, 4, 5, 6, 3, 7, 7, 5, 3, 2}; quickS...原创 2020-03-31 13:57:48 · 85 阅读 · 0 评论 -
冒泡排序
package TestTwo.demo4;import java.util.Arrays;public class BubbleSort { public static void main(String[] args) { int[] array = new int[]{23, 45, 43, 5, 3, 6, 6, 56, 5, 46, 4, 56, 54};...原创 2020-03-31 10:03:22 · 142 阅读 · 0 评论 -
汉诺塔问题
package TestTwo.demo1;public class TestHanoi { public static void main(String[] args) { hanoi(3,'A','B','C'); } /** * 无论有多少个盘子,都认为只有两个盘子。上面的所有盘子和下面的最后一个盘子。 * @param n ...原创 2020-03-31 08:40:03 · 173 阅读 · 0 评论 -
递归和斐波那契
package TestTwo.demo1.test;public class TestFebonacci { public static void main(String[] args) { int result = febonacci(7); System.out.println(result); } public static i...原创 2020-03-30 18:59:52 · 148 阅读 · 0 评论 -
双向循环链表
package TestTwo.demo1;public class DoubleNode { //上一个节点 DoubleNode previous; int data; DoubleNode next; public DoubleNode(int data) { this.previous = this; this....原创 2020-03-30 18:40:56 · 117 阅读 · 0 评论 -
循环链表
package TestTwo.demo1;public class LoopNode { //链表数据 int data; //下一个节点 LoopNode next = this; //构造方法 public LoopNode(int data) { this.data = data; } //取得当前节点...原创 2020-03-30 13:22:10 · 110 阅读 · 0 评论 -
往单链表中插入节点
package TestTwo.demo1;public class Node { //链表数据 int data; //下一个节点 Node next; //构造方法 public Node(int data){ this.data = data; } //给节点添加下(下)一个节点 public Nod...原创 2020-03-30 13:21:44 · 1495 阅读 · 0 评论 -
删除单链表中的节点
package TestTwo.demo1;public class Node { //链表数据 int data; //下一个节点 Node next; //构造方法 public Node(int data){ this.data = data; } //给节点添加下(下)一个节点 public Nod...原创 2020-03-30 12:23:14 · 239 阅读 · 0 评论 -
单链表
package TestTwo.demo1.test;import TestTwo.demo1.Node;public class TestNode { public static void main(String[] args) { //创造三个节点 Node node1 = new Node(1); Node node2 = ne...原创 2020-03-29 21:00:13 · 105 阅读 · 0 评论 -
队列
package TestTwo.demo1;public class MyQueue { int[] elements; public MyQueue() { elements = new int[0]; } //入队 public void push(int value) { int[] newArr = new i...原创 2020-03-28 12:43:41 · 105 阅读 · 0 评论 -
栈
package TestTwo.demo1.test;import TestTwo.demo1.MyStack;public class TestMyStack { public static void main(String[] args) { MyStack ms = new MyStack(); ms.push(9); Syst...原创 2020-03-28 12:05:28 · 108 阅读 · 0 评论 -
查找算法之二分法查找
package TestOne.panda;public class SearchTwo { public SearchTwo(int target, int[] arr) { //记录开始位置 int begin = 0; //记录结束位置 int end = arr.length - 1; //记录中间...原创 2020-03-26 13:30:48 · 171 阅读 · 0 评论 -
查找算法之线性查找
package TestOne.dog;import TestOne.panda.Search;public class TestSearch { public static void main(String[] args) { int[] arr = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 23, 3, 32, 34, 4, 5,...原创 2020-03-26 07:10:28 · 125 阅读 · 0 评论 -
面向对象的数组
package TestOne;import org.omg.CORBA.PUBLIC_MEMBER;import sun.font.DelegatingShape;import java.util.Arrays;public class MyArray { //用于存储数据的数组 private int[] elements; //构造方法 pub...原创 2020-03-25 22:29:45 · 246 阅读 · 0 评论 -
数组元素的删除
package TestOne;import java.util.Arrays;public class TestOperateArray2 { public static void main(String[] args) { int[] array = new int[]{2, 3, 4, 5, 9, 6, 7}; //Delete the thi...原创 2020-03-25 07:59:45 · 684 阅读 · 0 评论 -
数组元素的添加
package TestOne;import java.util.Arrays;public class TestOperateArray { public static void main(String[] args) { int[] array = new int[]{4, 5, 6}; //Quickly look at the element...原创 2020-03-25 07:39:24 · 151 阅读 · 0 评论 -
数组的基本使用
package TestOne;public class TestArray { public static void main(String[] args) { int []arr1 = new int[3]; System.out.println(arr1.length); //自带初始值(最好的做法是自己来初始化) ...原创 2020-03-25 07:05:19 · 80 阅读 · 0 评论