原创 python優先隊列heapq

https://blog.csdn.net/weixin_39702559/article/details/110971925 #coding:gbk import heapq # 使用heapq實現優先隊列 #定義一個可比較對象 cl

原创 面試題_滑動窗口

3. 無重複字符的最長子串 給定一個字符串 s ,請你找出其中不含有重複字符的 最長子串 的長度。 示例 1: 輸入: s = "abcabcbb" 輸出: 3 解釋: 因爲無重複字符的最長子串是 "abc",所以其長度爲 3。 示例 2:

原创 c++使用用空格拼接字符串_accumulate用法

std::accumulate(std::begin(x), std::end(x), string(), [](string &ss, string &s){return ss.empty() ? s : ss + " " + s;})

原创 面試_動態規劃

01揹包 劍指 Offer II 101. 分割等和子集 給定一個非空的正整數數組 nums ,請判斷能否將這些數字分成元素和相等的兩部分。 示例 1: 輸入:nums = [1,5,11,5] 輸出:true 解釋:nums 可以分割成

原创 面試_第K問題

215. 數組中的第K個最大元素 給定整數數組 nums 和整數 k,請返回數組中第 k 個最大的元素。 請注意,你需要找的是數組排序後的第 k 個最大的元素,而不是第 k 個不同的元素。 示例 1: 輸入: [3,2,1,5,6,4] 和

原创 面試_鏈表類

劍指 Offer 24. 反轉鏈表 定義一個函數,輸入一個鏈表的頭節點,反轉該鏈表並輸出反轉後鏈表的頭節點。 示例: 輸入: 1->2->3->4->5->NULL 輸出: 5->4->3->2->1->NULL 限制: 0 <= 節點個數

原创 面試_子數組類問題

劍指 Offer 42. 連續子數組的最大和 輸入一個整型數組,數組中的一個或連續多個整數組成一個子數組。求所有子數組的和的最大值。要求時間複雜度爲O(n)。 示例1: 輸入: nums = [-2,1,-3,4,-1,2,1,-5,4]

原创 面試題_DFS

200. 島嶼數量 給你一個由 '1'(陸地)和 '0'(水)組成的的二維網格,請你計算網格中島嶼的數量。島嶼總是被水包圍,並且每座島嶼只能由水平方向和/或豎直方向上相鄰的陸地連接形成。 此外,你可以假設該網格的四條邊均被水包圍。 示例 1

原创 面試題專題_目錄

動態規劃 有序數組的二分法解法 回溯法

原创 面試題_回溯法

46. 全排列 給定一個不含重複數字的數組 nums ,返回其 所有可能的全排列 。你可以 按任意順序 返回答案。 示例 1: 輸入:nums = [1,2,3] 輸出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3

原创 面試題_有序數組的二分法解法

劍指 Offer 53 - I. 在排序數組中查找數字 I 統計一個數字在排序數組中出現的次數。 示例 1: 輸入: nums = [5,7,7,8,8,10], target = 8 輸出: 2 示例 2: 輸入: nums = [5,7

原创 c++容器set

class Solution { public: vector<int> intersection(vector<int>& nums1, vector<int>& nums2) { // vector<int> a

原创 c++自定義排序_lambda表達式

class Solution { void quickSort(vector<string>& strs, int l, int r) { if (l >= r) return; int i

原创 python的sort自定義排序

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

原创 awk實現去重輸出

alias myuniq="awk 'BEGIN{a[\"\"]=1}{if(!(\$0 in a)){print \$0;a[\$0]=1}}'" awk 'BEGIN{a[""]=1}{if(!($0 in a)){print $0;