红黑树:public class RBTree { private final Node NIL = new Node(null,null,null,Color.BLA
节点:/* * 二叉树节点 */public class Node {//数据项public long data;//数据项public String sData;//左子节点public Node leftChild;//右子节点public Node rightChild;/** * 构造方法 * @param data */public Node(long data,St
节点:/* * 二叉树节点 */public class Node { //数据项 public long data; //数据项 public String sData; //左子节点 public Node leftChild; //右子节点 public Node rightChild; /** * 构造方法 * @param data */ public Nod
二叉树节点:/* * 二叉树节点 */public class Node { //数据项 public long data; //左子节点 public Node leftChild; //右子节点 public Node rightChild; /** * 构造方法 * @param data */ public Node(long data) { this.dat
快速排序:/* * 快速排序 */public class QuickSort { /** * 划分数组 */ public static int partition(long arr[],int left, int right,long point) { int leftPtr = left - 1; int rightPtr = right; while(true
希尔排序:/* * 希尔排序 */public class ShellSort { /** * 排序方法 */ public static void sort(long[] arr) { //初始化一个间隔 int h = 1; //计算最大间隔 while(h < arr.length / 3) { h = h * 3 + 1; } while(
汉诺塔的问题解决: 汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。public class HanoiTower { /** * 移动盘子 *
一,简单Demopublic class Recursion { public static void main(String[] args) { test(100); } public static void test(int n) { if(n == 0) { return; } System.out.println(n); test2(n - 1); }}二,三角
Node节点:/* * 链结点,相当于是车厢 */public class Node {//数据域public long data;//指针域public Node next;public Node previous;public Node(long value) {this.data = value;}/** * 显示方法 */public void display() {S
一,链表的节点/* * 链结点,相当于是车厢 */public class Node { //数据域 public long data; //指针域 public Node next; public Node(long value) { this.data = value; } /** * 显示方法 */ public void display() { System
一,栈public class MyStack {//底层实现是一个数组private long[] arr;private int top;/** * 默认的构造方法 */public MyStack() {arr = new long[10];top = -1;}/** * 带参数构造方法,参数为数组初始化大小 */public MyStack(int maxsize) {arr = new
一,冒泡排序法public class BubbleSort {public static long[] sort(long[] arr){long temp;for(int i=0;i<arr.length-1;i++){for(int j=arr.length-1;j>i;j--){if(arr[j]<arr[j-1]){temp=arr[j];arr[j] = arr[j-
详细记录本人研究数据结构与算法的全部历程!
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号