原创 計蒜客藍橋B組模擬賽五-C. 連連看

連連看是一款非常有意思的遊戲。 我們可以把任意兩個在圖的在邊界上的相同的方格一起消掉,比如把兩個 44 消掉以後, 每次消掉兩個方格的時候,都有會獲得一個分數,第 ii 次消的分數爲 i \timesi× 方格的值。

原创 Java中HashSet的學習

HashSet是非同步的,允許使用null元素。如果多個線程同時訪問一個Hashset,而其中至少一個線程修改了該set,那麼它必須保持外部同步。這通常是通過對自然封裝該set的對象執行同步操作來完成的。如果不存在這樣的對象,則應該使用

原创 linux內核數據結構之avl樹.

寫在前面的話:    linux 內核中數據結構的存儲已經不在用avl樹,我在對應的代碼中也沒有找到實現,應該是內核中全部用rbtree替換了.zebos中avl樹的實現相對較複雜,考慮了臨時緩衝等多種因素,不適合作爲初學者理解av

原创 Collections.sort()和Arrays.sort()的算法實現

Arrays.sort() 先來看看Arrays.sort();,一點進這個方法會看到是這樣子的 public static void sort(int[] a) { DualPivotQuicksort.sort(a, 0,

原创 PAT甲級-1135 Is It A Red-Black Tree

主要是要理解紅黑樹的定義: There is a kind of balanced binary search tree named red-black tree in the data structure. It has the fol

原创 UML各種關係線的含義

內容目錄: 從一個示例開始類之間的關係時序圖附錄:《圖說設計模式》 看懂UML類圖和時序圖 這裏不會將UML的各種元素都提到,我只想講講類圖中各個類之間的關係; 能看懂類圖中各個類之間的線條、箭頭代表什麼意思後,也就足夠應對 日

原创 Java this的作用、equals和==的區別、instanceof和isInstance區別

1. java中this關鍵字的作用 一、this關鍵字主要有三個應用:  (1)this調用本類中的屬性,也就是類中的成員變量;  (2)this調用本類中的其他方法;  (3)this調用本類中的其他構造方法,調用時要放在構造方法的首

原创 Java 集合系列04之 fail-fast總結(通過ArrayList來說明fail-fast的原理、解決辦法)

概要 前面,我們已經學習了ArrayList。接下來,我們以ArrayList爲例,對Iterator的fail-fast機制進行了解。內容包括::1 fail-fast簡介2 fail-fast示例3 fail-fast解決辦法

原创 Java中HashMap的學習

HashMap源碼及詳細介紹:Java 集合系列10之 HashMap詳細介紹(源碼解析)和使用示例 HashMap是一個散列表,存儲的內容是鍵值對(key-value)映射,其實現不是同步的,這意味着它不是線程安全的,其映射也不是有序的

原创 Codeforces Round #453 (Div. 2)...

A(水題) #include <bits/stdc++.h> using namespace std; struct node { int x, y; bool operator<(const node k) const { r

原创 Java中PriorityQueue的學習

API 1.構造函數 PriorityQueue() PriorityQueue(Collection<? extends E> c) PriorityQueue(int initialCapacity) PriorityQueu

原创 Java的TreeMap和HashMap的介紹和使用

1. TreeMap的介紹和使用 第1部分 TreeMap介紹 TreeMap 簡介 TreeMap 是一個有序的key-value集合,它是通過紅黑樹實現的。TreeMap 繼承於AbstractMap,所以它是一個Map,

原创 Java中Hashtable的學習

Hashtable源碼及詳細介紹:Java 集合系列11之 Hashtable詳細介紹(源碼解析)和使用示例 首先,可以用HashMap完全代替Hashtable的使用,Hashtable是比較老的集合了,它繼承於Dictionary。較

原创 Java中LinkedList的學習

LinkedList源碼及學習:Java 集合系列05之 LinkedList詳細介紹(源碼解析)和使用示例 Java怎麼使用棧和隊列:java中棧和隊列的實現和API用法 // 代碼實現 import java.util.Iterat

原创 Java中TreeSet的學習

增刪改查時間複雜度爲log(n),詳細學習推薦: Java 集合系列17之 TreeSet詳細介紹(源碼解析)和使用示例 // 實現代碼 import java.util.Iterator; import java.util.TreeS