原创 圖像紋理

在圖像處理中,我們常常會碰到使用圖像的紋理來作爲圖像的特徵。感覺有點抽象,所以就查了一些文獻,常見的定義有以下幾個:                                                            

原创 包含min函數的棧|劍指offer

題目描述 定義棧的數據結構,請在該類型中實現一個能夠得到棧最小元素的min函數 因爲棧結構先進後出的,如果我們只使用一個變量業保存最小值,是不可行的。我們可以構造一個輔助函數來記錄每個位置上對應的最小值。劍指offer裏面的原題要求

原创 第一個只出現一次的字符位置

題目描述 在一個字符串(1<=字符串長度<=10000,全部由字母組成)中找到第一個只出現一次的字符的位置。若爲空串,返回-1。位置索引從0開始 設置一個哈希表,把每個字符當成索引,對應的值爲出現的次數,先遍歷一遍,統計出每個字符

原创 4.替換空格||劍指offer

題目描述 請實現一個函數,將一個字符串中的空格替換成“%20”。例如,當字符串爲We Are Happy.則經過替換之後的字符串爲We%20Are%20Happy。 此題我們首先需要思考是否可以開闢空間,是在原數組上進行修改還是可

原创 數組中只出現一次的數字

題目描述 一個整型數組裏除了兩個數字之外,其他的數字都出現了兩次。請寫程序找出這兩個只出現一次的數字。        數組中有兩個數字只出現一次,但是其它數字都出現兩次,這讓我們想到了,整個數組中只有一個數字只出現一次,其它數字都出

原创 2016 cherish & set sail

      在過去的一年裏,來到了這個地方,有失落有驚喜,參加過院羽毛球隊,接觸了機器學習這門有意思的課程,買了一個kindle,推開了閱讀世界的大門。。。。。年底的時候,成爲了嚴重拖拉患者,內心甚是煎熬,幸虧在閱讀的海洋裏面找到療傷的祕

原创 16鏈表的反轉|劍指offer

題目描述 輸入一個鏈表,反轉鏈表後,輸出鏈表的所有元素。 /* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x),

原创 17.合併兩個排序的鏈表|劍指Offer

題目描述 輸入兩個單調遞增的鏈表,輸出兩個鏈表合成後的鏈表,當然我們需要合成後的鏈表滿足單調不減規則。 依次地遍歷兩個鏈表的結點,並進行比較大小,使用新的鏈表結點指向小的結點,可以使用遞歸; /* struct ListNod

原创 數組中出現次數超過一半的數字||劍指offer

題目描述 數組中有一個數字出現的次數超過數組長度的一半,請找出這個數字。例如輸入一個長度爲9的數組{1,2,3,2,2,2,5,4,2}。由於數字2在數組中出現了5次,超過數組長度的一半,因此輸出2。如果不存在則輸出0。  

原创 鏈表中環的入口結點

題目描述 一個鏈表中包含環,請找出該鏈表的環的入口結點 思路:先把到 快慢指針相交的地方a,根據數學推導,從頭指針和a處開始移到,第一次相交的地方就是環的入口處。 /* struct ListNode { int va

原创 面試題五:從尾到頭打印鏈表|劍指offer

題目:輸入一個鏈表的頭結點,從尾到頭反過來打印出每個結點的值。(牛客網編程版) 與面試官確定題意:因爲是從尾到頭反過來打印每個結點,則要確定一下可不可以改變原來的鏈表結構? 下面,我將從改變鏈表結構和不改變鏈表結構來分析: 通常打印是一個

原创 和爲S的兩個數字

題目描述 輸入一個遞增排序的數組和一個數字S,在數組中查找兩個數,使得他們的和正好是S,如果有多對數字的和等於S,輸出兩個數的乘積最小的。 輸出描述: 對應每個測試案例,輸出兩個數,小的先輸出。 class Solution

原创 合併兩個排序的鏈表

題目描述 輸入兩個單調遞增的鏈表,輸出兩個鏈表合成後的鏈表,當然我們需要合成後的鏈表滿足單調不減規則。 如圖所示(),邊界處理() /* struct ListNode { <span style="white-space:pr

原创 不用加減乘除做加法

題目描述 寫一個函數,求兩個整數之和,要求在函數體內不得使用+、-、*、/四則運算符號。 class Solution { public: int Add(int num1, int num2) {

原创 二叉樹的深度

題目描述 輸入一棵二叉樹,求該樹的深度。從根結點到葉結點依次經過的結點(含根、葉結點)形成樹的一條路徑,最長路徑的長度爲樹的深度 /* struct TreeNode { int val; struct TreeNode