原创 GitHub的使用教程

準備工作 GitHub賬戶 Idea編輯器 git.exe Step 1 下載git.exe 下載下來,解壓安裝 Step 2 打開IDEA 安裝上圖修改Git的path to Git executable 到你的安裝路徑

原创 GitBash的使用教程

https://blog.csdn.net/wangrenbao123/article/details/55511461/

原创 註解解析

參考該文章:http://www.cnblogs.com/mouseIT/p/5033746.html 作者補充了註解解析 註解格式 @Documented @Inherited @Target({ElementType.TYPE,E

原创 java的對象實例化加載順序

這篇博客對實例化加載,描寫詳盡

原创 O(n^2)的排序算法--希爾,插排,選排,冒泡

選擇排序法 public class SelectionSort{ //爲了不產生實例 private SelectionSort(){} public static void sort(Comparabl

原创 JAVA數據結構之哈希表

hash表的優缺點 hash表比樹形結構快的原因,表的是位置是計算出來的通過hash函數,滿足隨機插入的結構。但是在有該優點的情況下,需要考慮哈希衝突 本例結構中採用鏈地址法【在hash表的每一個表單元,都是鏈表結構,發生衝突的元素,自

原创 JAVA數據結構之AVLTree平衡二叉樹

public class AVLTree<K extends Comparable<K>,V>{ private class Node{ public K key; public V value;

原创 JAVA數據結構之LinkedListMap

LinkedListMap 底層用LinkedList實現Map public class LinkedListMap<K,V> implements Map<K,V>{ //內部定義節點 private class Node

原创 JAVA數據結構之優先隊列

在每個元素都有優先級的情況下 Struct 入隊 出隊(拿出最大元素) 普通線性結構 O(1) O(n) 順序線性結構 O(n) O(1) 堆 O(logn) O(logn) 用堆實現: - 優先隊列的實現,

原创 JAVA數據結構之鏈表實現棧

鏈表實現棧 接口 public interface Stack <E>{ int getSize(); boolean isEmpty(); void push(E e); E pop(); E p

原创 JAVA數據結構之BST實現Set集合

Set 接口 public interface Set<E>{ void add(E e); void remove(E e); boolean contains(E e); int getSize();

原创 LinkedListSet 和 BSTSet 性能分析

集合基於底層實現不同,而造成的性能不同 基於鏈表的集合 基於二分搜索樹的集合 method LinkedListSet BSTSet 增add O(n)【需要查】 O(h)[平均] 查contains O(n) O(h

原创 Java數據結構之動態數組

動態數組 實現需求 增:(add(),addFirst(),addLast()) 刪:(remove(),removeFirst(),removeLast()) 改:(set(),) 查 :(find(),contains(),isE

原创 JAVA數據結構之鏈表【有dummyNode】

LinkedList Node結點 data域 下個結點的指向 Node結點代碼 private class Node { public E e; public Node next; public Node(

原创 JAVA數據結構之BSTMap

BSTMap 由BST底層實現的映射 接口 public interface Map<K,V> { void add(K key, V value); V remove(K key); boolean cont