原创 LeetCode——第108題:將有序數組轉化爲二叉搜索樹

題目: 將一個按照升序排列的有序數組,轉換爲一棵高度平衡二叉搜索樹。 本題中,一個高度平衡二叉樹是指一個二叉樹每個節點 的左右兩個子樹的高度差的絕對值不超過 1。 示例: 給定有序數組: [-10,-3,0,5,9], 一個可能的

原创 LeetCode——第19題:刪除鏈表的倒數第N個節點

題目: 給定一個鏈表,刪除鏈表的倒數第 n 個節點,並且返回鏈表的頭結點。 示例: 給定一個鏈表: 1->2->3->4->5, 和 n = 2. 當刪除了倒數第二個節點後,鏈表變爲 1->2->3->5. 說明: 給定的 n 保

原创 好好學習,天天向上!

今日起,好好學習,好好工作,好好掙錢,好好生活,立貼爲證! ——二零一九年十月十日 目標: 一、完成《c程序設計語言》閱讀、習題。 ——2019.10.10 2019.10.10 進度:7/2

原创 記導入第三方庫Alamofire的坑

按照網上打的操作步驟導入之後,存在No Such Module ‘Alamofire’,解決辦法是重新Build。但是根本沒用。 原因是版本問題。選擇一個合適的版本即可。在readme.文件可看到對應的版本情況。

原创 記udev規則無效問題

1.注意規則的權限 2.注意規則關鍵字的順序 失效規則: KERNEL==“md1”,SUBSYSTEM==“block”,ACTION==“change”,RUN+="/home/dhc/raid1.sh changed %k" 因

原创 規範好幾個放到

沃爾沃二第三個 第三方個是大法官是大法官 baidu 中嘎到拉薩的看書看書看書看書、 水電費 非 //的過戶東風谷大鍋飯的 567856785 457 sdfgsfgsdf sdfg fy dsdfg 標

原创 梯子

1.先安裝pip 2.安裝shadowsocks服務端 pip install shadowsocks 3.配置文件 /etc/shadowsocks.json配置文件內容。 多端口配置: { "server": "0.0.0.0"

原创 github使用

參考廖雪峯教程 主要是windows上的操作。在其他系統命令一樣。 github簡介 git是一個分佈式版本控制系統,非常好用。 瞭解一下 github在內的版本控制系統都是追蹤文本文件的變化。 安裝 github現在已經支持Linux

原创 希爾排序分析實現

算法思想: 希爾排序又叫縮小增量,也是一種插入排序。希爾排序中有一個步長,通過這個步長將數組分化爲步長個序列,然後分別對這些序列進行直接插入排序,然後改變步長,重複操作,直到步長爲1,而此時數組基本有序,很快。步長的取法一般是開始爲(數組

原创 快速排序

算法思想: 快速排序採用了分治的思想,在對數組進行排序時,首先選取數組中的一個元素作爲基準元素,然後將數組中所有小於等於基準元素的元素放在基準元素的左邊,而大於基準元素的放在基準元素的右邊,然後對基準元素的左右兩邊的序列採用同樣的方式對其

原创 堆排序分析實現

算法思想 若升序,建大堆,每次選擇堆頂元素即最大的數,和最後一位交換,再縮小堆的範圍(避免剛排好的最後一個位置被調回去),對剩下的進行向下調整(此時只有根節點不對,左右子樹都滿足大堆)。反覆進行直到堆的範圍爲0.則數據就有序了。 代碼實現

原创 LeetCode——第155題:最小棧

題目: 設計一個支持 push,pop,top 操作,並能在常數時間內檢索到最小元素的棧。 push(x) – 將元素 x 推入棧中。 pop() – 刪除棧頂的元素。 top() – 獲取棧頂元素。 getMin() – 檢索棧中

原创 LeetCode——第53題:最大字段和

題目: 給定一個整數數組 nums ,找到一個具有最大和的連續子數組(子數組最少包含一個元素),返回其最大和。 示例: 輸入: [-2,1,-3,4,-1,2,1,-5,4], 輸出: 6 解釋: 連續子數組 [4,-1,2,1] 的

原创 LeetCode——第384題:打亂數組

參考 題目: 打亂一個沒有重複元素的數組。 示例: // 以數字集合 1, 2 和 3 初始化數組。 int[] nums = {1,2,3}; Solution solution = new Solution(nums); // 打

原创 冒泡排序(包括兩種優化)

說明 穩定性:穩定 時間複雜度:最好-O(n);最壞O(n^2);平均O(n^2); 空間複雜度:O(1) 使用場景:數據規模小的場景 算法思想:比較相鄰的兩個元素,將較小的數交換到左端,直到序列有序。 實現說明:包含兩層循環,每次外層