原创 leetcode 474

題目: 難度中等163 在計算機界中,我們總是追求用有限的資源獲取最大的收益。 現在,假設你分別支配着 m 個 0 和 n 個 1。另外,還有一個僅包含 0 和 1 字符串的數組。 你的任務是使用給定的 m 個 0 和 n 個 1 ,找到

原创 劍指 Offer 38. 字符串的排列

劍指 Offer 38. 字符串的排列題目:示例:題解: 題目: 輸入一個字符串,打印出該字符串中字符的所有排列。你可以以任意順序返回這個字符串數組,但裏面不能有重複元素。 示例: 輸入:s = "abc" 輸出:["abc","

原创 leetcode 劍指offer 面試題48. 最長不含重複字符的子字符串

題目: 請從字符串中找出一個最長的不包含重複字符的子字符串,計算該最長子字符串的長度。 示例 1: 輸入: "abcabcbb" 輸出: 3  解釋: 因爲無重複字符的最長子串是 "abc",所以其長度爲 3。 示例 2: 輸入:

原创 leetcode372

題目: 你的任務是計算 ab 對 1337 取模,a 是一個正整數,b 是一個非常大的正整數且會以數組形式給出。 示例 1: 輸入: a = 2, b = [3] 輸出: 8 示例 2: 輸入: a = 2, b = [1,0] 輸

原创 leetcode297

題目: 序列化是將一個數據結構或者對象轉換爲連續的比特位的操作,進而可以將轉換後的數據存儲在一個文件或者內存中,同時也可以通過網絡傳輸到另一個計算機環境,採取相反方式重構得到原數據。 請設計一個算法來實現二叉樹的序列化與反序列化。這裏不限

原创 leetcode 劍指offer 面試題45. 把數組排成最小的數

題目: 輸入一個非負整數數組,把數組裏所有數字拼接起來排成一個數,打印能拼接出的所有數字中最小的一個。 示例 1: 輸入: [10,2] 輸出: "102" 示例 2: 輸入: [3,30,34,5,9] 輸出: "3033459"

原创 leetcode433

題目: 一條基因序列由一個帶有8個字符的字符串表示,其中每個字符都屬於 "A", "C", "G", "T"中的任意一個。 假設我們要調查一個基因序列的變化。一次基因變化意味着這個基因序列中的一個字符發生了變化。 例如,基因序列由"AAC

原创 leetcode452

題目: 在二維空間中有許多球形的氣球。對於每個氣球,提供的輸入是水平方向上,氣球直徑的開始和結束座標。由於它是水平的,所以y座標並不重要,因此只要知道開始和結束的x座標就足夠了。開始座標總是小於結束座標。平面內最多存在104個氣球。 一支

原创 leetcode413

題目: 如果一個數列至少有三個元素,並且任意兩個相鄰元素之差相同,則稱該數列爲等差數列。 例如,以下數列爲等差數列: 1, 3, 5, 7, 9 7, 7, 7, 7 3, -1, -5, -9 以下數列不是等差數列。 1, 1, 2,

原创 leetcode781

      數一下和自己報相同數字的兔子有多少個,如果超過了報的數x+1,那麼多出來的兔子是屬於另外的團體的。        class Solution { public: int numRabbits(vector<int>

原创 leetcode845

先貼代碼 class Solution { public: int longestMountain(vector<int>& A) { vector<int>dp(A.size(),0); int

原创 leetcode495

哈哈哈,我以爲是馮提莫呢! 其實就是區間疊加 class Solution { public: int findPoisonedDuration(vector<int>& timeSeries, int duration) {

原创 leetcode378

優先隊列 class Solution { public: int kthSmallest(vector<vector<int>>& matrix, int k) { priority_queue<int>q;

原创 leetcode481

先貼一下代碼 class Solution { public: int magicalString(int n) { vector<int>tmp; tmp.push_back(1);

原创 leetcode456

題目: 給定一個整數序列:a1, a2, ..., an,一個132模式的子序列 ai, aj, ak 被定義爲:當 i < j < k 時,ai < ak < aj。設計一個算法,當給定有 n 個數字的序列時,驗證這個序列中是否含有13