原创 劍指offer-面試題28 字符串的排列

//輸入一個字符串.打印出該字符串中字符的所有排列.如輸入abc, 打印abc,acb,bac, bca, cab,cba. #include <iostream> using namespace std; void Swap(c

原创 STL源碼剖析筆記-6算法(6.5,6.6)

6.5 set相關算法 set_union: 構造s1和s2的並集,此集合內含有s1和s2的所有元素 某個值在s1內出現n次,在s2內出現m次,那麼該值在輸出區間內出現max(n,m)次,其中n次來自s1,其餘來自s2. 如果

原创 面試題12 打印從1到n位的最大數字

//輸入數字n, 打印從1到n位的最大數字,如輸入2, 打印1~99 #include<iostream> using namespace std; bool IncreaseOne(char* charNumber, int n

原创 劍指offer-面試題29 找到數組中出現次數超過一半的數字-1

//方法一: 找出排序在中間的那個數字. 但是不是先排序,而是隻要找到排在中間的數字就行. #include<iostream> using namespace std; void Swap(int &a, int &b) {

原创 tmux基本指令

tmux是一個終端窗口管理器 文章目錄會話管理窗口管理窗格管理其他 會話管理 會話類似於tmux實例 指令 功能 tmux ls 列出所有tmux會話 tmux detach Ctrl+b d. 退出當前會話

原创 STL源碼剖析筆記-6算法(6.4 基本算法)

6.4 基本算法 基本算法位於頭文件<stl_algobase.h>中 equal:判斷兩個序列是否相等 要求第二個序列要比第一個序列多。 template <class InputIterator1, class Inpu

原创 STL源碼剖析筆記-6算法(6.7 其他算法1)

6.7 其他算法 6.7.1 單純的數據處理 adjacent_find: 找出第一組滿足條件的相鄰元素。 template <class ForwardIterator> ForwardIterator adjacent_

原创 劍指offer-面試題5 反向輸出鏈表值

typedef struct ListNode* List; struct ListNode { int Value; struct ListNode* Next; }; void ReverseList1(Lis

原创 劍指offer-面試題20 順時針打印矩陣

//輸入一個矩陣,按照從外向裏依次順時針打印每個數字 #include<iostream> using namespace std; void PrintOneCircle(int **Matrix, int columns, i

原创 STL源碼剖析筆記-6算法(6.7 其他算法2)

6.7.2 lower_bound 在不破壞排序狀態的原則下,可插入value的第一個位置 區間爲有序的 如果存在與value相等的元素,返回其迭代器 如果不存在,返回第一個不小於value的元素,即這樣的元素存在時應該出現的位

原创 STL源碼剖析筆記-6算法(6.3 數值算法)

6.3 數值算法 欲使用它們,客戶端必須包含表頭<numeric> SGI將它們實現於<stl_numeric.h>中 accumulate:計算某個區間內的元素和,累加到初值上。 template <class InputI

原创 劍指offer - 面試題30 找出數組最小的k個數

//方法1 : 通過類似快排的方法找到排在第k+1位置的數,並且左邊都是比他小的,因此桌面的書就是k個最小的數 #include<iostream> #include<vector> using namespace std; vo

原创 劍指offer - 面試題30 找出數組最小的k個數

//方法1 : 通過類似快排的方法找到排在第k+1位置的數,並且左邊都是比他小的,因此桌面的書就是k個最小的數 #include<iostream> #include<vector> using namespace std; vo

原创 劍指offer-面試題26 複雜鏈表的複製

//實現複製一個複雜連表,在複雜連表中嗎,每個節點出了指向下個節點的指針外,還有一個指針指向任意一個節點或者爲NULL #include<iostream> using namespace std; typedef struct

原创 劍指offer-面試題23 分層遍歷二叉樹

//從上到下,從左到右,分層打印二叉樹 //從上到下按層遍歷二叉樹,從本質上講就是廣度優先遍歷二叉樹,不管是廣度優先遍歷二叉樹還是圖,都要用到一個隊列第一步我們把起始節點放入隊列,接下來每次從隊列頭部取一個節點,遍歷這個節點之後把