原创 求和爲aim的最長子數組以及擴展問題

求和爲aim的最長子數組 // // mosteor.cpp // AdvancedFour // // Created by 吳珝君 on 2019/5/23. // Copyright © 2019年 閒着也是賢者. Al

原创 本地套接字的使用

#include <stdio.h> #include <unistd.h> #include <sys/socket.h> #include <strings.h> #include <string.h> #include <ctyp

原创 算法基礎__第7課(前綴樹以及相關應用、分金條問題、IPO問題、數據流中的中位數、宣講會的場次、字符串的最小拼接序列)

什麼是前綴樹、前綴樹的基本特徵、前綴樹的應用、 所謂的字典樹又被稱爲前綴樹或者叫做trie樹,是處理字符串的常用數據結構。其優點是利用字符串的公共前綴來 節約存儲空間。其基本性質如下: (1)根節點沒有字符路徑。除根節點之外,每一個節點

原创 算法基礎__第4課(二叉樹前中後序非遞歸遍歷、層次遍歷、二叉樹的序列化與反序列化、二叉樹的後繼節點、二叉搜索樹的後繼節點、摺紙問題)

1. 二叉樹的鋸齒形層次遍歷 給出一棵二叉樹,返回其節點值的鋸齒形層次遍歷(先從左往右,下一層再從右往左,層與層之間交替進行) 樣例 樣例 1: 輸入:{1,2,3} 輸出:[[1],[3,2]] 解釋: 1 / \

原创 算法進階__第4課(大樓輪廓問題、LRU、LFU、異或和爲0的最多劃分、最大搜索二叉子樹、和爲aim的最長子數組)

給定一個N行3列二維數組,每一行表示有一座大樓,一共有N座 大樓。 所有大樓的底部都坐落在X軸上,每一行 的三個值 (a,b,c)代表每座大樓的從(a,0)點開始,到 (b,0)點結束,高 度爲c。 輸入的數據可以保證a<b,且 a,b

原创 1

Public class OperationFactory { public static Operation createOperate(string operate){ Operation oper = null; swi

原创 鏈表的排序

/** * 本參考程序來自九章算法,由 @九章算法 提供。版權所有,轉發請註明出處。 * - 九章算法致力於幫助更多中國人找到好的工作,教師團隊均來自硅谷和國內的一線大公司在職工程師。 * - 現有的面試培訓課程包括:九章算法班,系統設

原创 算法基礎__第2課(按照某個值劃分數組、荷蘭國旗問題、快速排序以及對快速排序的改進、堆排序以及堆排序的時間複雜度分析。基數排序特點以及介紹)

給出一個整數數組 nums 和一個整數 k。劃分數組(即移動數組 nums 中的元素),使得: 所有小於k的元素移到左邊 所有大於等於k的元素移到右邊 返回數組劃分的位置,即數組中第一個位置 i,滿足 nums[i] 大於等於 k。

原创 算法基礎__第4課(二叉樹前中後序非遞歸遍歷、層次遍歷、二叉樹的序列化與反序列化、)

1. 二叉樹的鋸齒形層次遍歷 給出一棵二叉樹,返回其節點值的鋸齒形層次遍歷(先從左往右,下一層再從右往左,層與層之間交替進行) 樣例 樣例 1: 輸入:{1,2,3} 輸出:[[1],[3,2]] 解釋: 1 / \

原创 算法基礎__第5課(認識哈希函數與哈希表、設計RandomPool結構、認識布隆過濾器、認識一致性哈希、島問題、認識並查集結構)

57. Insert Delete GetRandom O(1) 中文 English 設計一個數據結構實現在平均 O(1) 的複雜度下執行以下所有的操作。 insert(val): 如果這個元素不在set中,則插入。 remove

原创 算法基礎__第7課(前綴樹以及相關應用、分金條問題、IPO問題)

什麼是前綴樹、前綴樹的基本特徵、前綴樹的應用、 所謂的字典樹又被稱爲前綴樹或者叫做trie樹,是處理字符串的常用數據結構。其優點是利用字符串的公共前綴來 節約存儲空間。其基本性質如下: (1)根節點沒有字符路徑。除根節點之外,每一個節點

原创 二叉樹最大路徑和

  給出一棵二叉樹,尋找一條路徑使其路徑和最大,路徑可以在任一節點中開始和結束(路徑和爲兩個節點之間所在 路徑上的節點權值之和 class retData { public: int maxval; int lrm

原创 算法進階__第8課(兩個有序數組相加和的topk問題、邊長都是1的正方形大小、最大子數組的和、最長不重複子串、斐波那契擴展、完美洗牌問題)

  題目1: 兩個有序數組間相加和的TOP K問題 【題目】 給定兩個有序數組arr1和arr2,再給定一個整數k,返回來自 arr1和arr2的兩個數相加和最大的前k 個,兩個數必須分別來自 兩個數組。 【舉例】 arr1=[1,2,

原创 BST(java和c++實現)

import jdk.dynalink.beans.StaticClass; public class BST_Test { public static void main(String[] args) {