算法和数据结构
文章平均质量分 79
枫林晚。
没有很帅,但长得实在!
展开
-
哈夫曼树代码实现
package com.datastructure.tree.binaryTree;import java.util.*;/** * 哈夫曼树 */public class HuffmanTree { //测试一把 public static void main(String[] args) { int[] arr={13,7,8,3,29,6,1}...原创 2020-03-04 11:43:03 · 523 阅读 · 0 评论 -
堆排序
package com.datastructure.sortingalgorithm;import java.text.SimpleDateFormat;import java.util.Date;/** * 堆排序 * 非常快 */public class HeapSort { //测试一把 public static void main(String[] a...原创 2020-03-03 23:15:19 · 188 阅读 · 0 评论 -
顺序存储二叉树
package com.datastructure.tree.binaryTree;/** * 顺序存储二叉树 * * 1。顺序存储二叉树通常只考虑完全二叉树 * 2。第n个元素的左子节点为2*n+1 * 3。第n个元素的右子节点为2*n+2 * 4。第n个元素的父亲节点为(n-1)/2 */public class SequentialStorageBinaryTree {...原创 2020-03-03 18:16:32 · 118 阅读 · 0 评论 -
中序线索二叉树
package com.datastructure.tree.binaryTree.cluebinarytree;/** * 线索二叉树 */public class ClueBinaryTree { public static void main(String[] args) { ClueBinaryTre clueBinaryTre = new ClueB...原创 2020-03-03 18:13:15 · 296 阅读 · 0 评论 -
顺序存储二叉树的遍历
package com.datastructure.tree.binaryTree;/** * 顺序存储二叉树 * * 1。顺序存储二叉树通常只考虑完全二叉树 * 2。第n个元素的左子节点为2*n+1 * 3。第n个元素的右子节点为2*n+2 * 4。第n个元素的父亲节点为(n-1)/2 */public class SequentialStorageBinaryTree {...原创 2020-03-02 16:08:39 · 537 阅读 · 0 评论 -
二叉树
package com.datastructure.tree.binaryTree;/** * 二叉树 */public class BinaryTree { //测试一把 public static void main(String[] args) { //创建一棵树 BinaryTre binaryTre = new BinaryTr...原创 2020-03-01 15:59:52 · 129 阅读 · 0 评论 -
手写哈希表
情景: google公司上机题, 有一个公司,当有新员工来报到时,要求将该员工的信息加入(ID,姓名,年龄,地址),当输入员工的ID时,要求查找到该员工的所有信息要求: 不使用数据库,速度越快越好====》言外之意,用hash表来完成package com.datastructure.HashTableDemo;import java.util.Scanner;/** * googl...原创 2020-02-29 17:27:09 · 682 阅读 · 0 评论 -
斐波那契查找算法(黄金分割查找算法)
package com.datastructure.searchalgorithm;import java.util.ArrayList;import java.util.Arrays;import java.util.List;/** * 斐波那契查找算法(黄金分割查找算法) */public class Fibonacci { public static void ...原创 2020-02-28 23:03:06 · 353 阅读 · 0 评论 -
插值查找算法
package com.datastructure.searchalgorithm;import java.util.ArrayList;import java.util.List;/** * 插值查找算法 * * 对于数据量较大,关键字分布比较均匀的查找表来说,采用插值查找,速度较快 * * 但是在关键字分布不均匀的情况下,该方法不一定比二分查找要好 */public c...原创 2020-02-28 18:45:42 · 118 阅读 · 0 评论 -
二分查找
package com.datastructure.lookupalgorithm;import java.util.ArrayList;import java.util.List;/** * 二分查找 * 数组必须是有序的 */public class BinarySearch { public static void main(String[] args) {//...原创 2020-02-28 16:23:07 · 178 阅读 · 0 评论 -
希尔排序
package com.datastructure.sortingalgorithm;import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;/** * 希尔排序 * 非常快 */public class ShellSort { public static void...原创 2020-02-28 14:41:55 · 90 阅读 · 0 评论 -
选择排序
package com.datastructure.sortingalgorithm;import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;/** * 选择排序 * 排序速度快于冒泡排序 */public class SelectionSort { public ...原创 2020-02-28 14:41:28 · 96 阅读 · 0 评论 -
快速排序
package com.datastructure.sortingalgorithm;import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;/** *快速排序 * 比希尔还快 */public class QuickSort { public static voi...原创 2020-02-28 14:40:53 · 84 阅读 · 0 评论 -
归并排序
package com.datastructure.sortingalgorithm;import java.util.Arrays;/** * 归并排序 */public class MergeSort { public static void main(String[] args) { int[] a = {90,-2,0,1,2,90,5,-2,4,3...原创 2020-02-28 14:40:14 · 122 阅读 · 0 评论 -
插入排序
package com.datastructure.sortingalgorithm;import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;/** * 插入排序 */public class InsertSort { public static void main(S...原创 2020-02-28 14:39:44 · 60 阅读 · 0 评论 -
冒泡排序及其优化
package com.datastructure.sortingalgorithm;import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;/**冒泡排序及其优化排序速度不是很快*/public class BubbleSort {public static voi...原创 2020-02-28 14:38:53 · 137 阅读 · 0 评论 -
基数排序
package com.datastructure.sortingalgorithm;import java.util.Arrays;/**基数排序稳定的排序速度非常快,比快速,归并都快但是占用内存空间巨大,是典型的空间换时间*/public class RadixSort {public static void main(String[] args) { in...原创 2020-02-28 14:37:15 · 81 阅读 · 0 评论