原创 Android Studio查看兩段代碼不同

先複製一段要比較的代碼 View->Compare With 如果是文件比較選上方,如果是代碼片段選下方 點贊 1 收藏 分享 文章舉報 祿的光線 發佈了94 篇原創文章 ·

原创 算法學習之翻轉單詞順序列

題目一:翻轉單詞順序。 牛客最近來了一個新員工Fish,每天早晨總是會拿着一本英文雜誌,寫些句子在本子上。同事Cat對Fish寫的內容頗感興趣,有一天他向Fish借來翻看,但卻讀不懂它的意思。例如,“student. a am I”。後

原创 算法學習之二叉搜索樹的第k個結點

題目描述 給定一棵二叉搜索樹,請找出其中的第k小的結點。例如, (5,3,7,2,4,6,8)    中,按結點數值大小順序第三小結點的值爲4。 思路:直接用中序遍歷倆獲取遞增的有序列表就可以了 /* public class Tr

原创 算法學習之不用加減乘除做加法

題目描述 寫一個函數,求兩個整數之和,要求在函數體內不得使用+、-、*、/四則運算符號。 思路:使用^和&進行操作 1、首先使用^進行相加操作,進位不處理,因爲二進制只存在0、1所以相同爲同爲1時此位置變爲0 2、使用&操作配合左移<

原创 導入aar報錯

今天在集成穿山甲廣告時遇到了一個比較奇葩的問題,因爲之前app裏嵌入的遊戲頁面是以白鷺引擎轉過來的,其sdk裏存在.so文件和arr,在引入穿山甲廣告的arr文件時報瞭如下錯: Process: com.suyuemobi.kouh

原创 算法學習之和爲s的數字

題目一:和爲s的兩個數字。 輸入一個遞增排序的數組和一個數字S,在數組中查找兩個數,使得他們的和正好是S,如果有多對數字的和等於S,則輸出任意一對即可。 思路,看見有序遞增馬上想到二分查找,但是本題要求兩個數之和等於目標值,所以轉爲雙

原创 算法學習之數字在排序數組中出現的次數

題目描述 統計一個數字在排序數組中出現的次數。 思路:看到排序樹組馬上想到二分查找。更爽的是Java爲我們提供了api import java.util.*; public class Solution { public i

原创 算法學習之n個骰子的點數

題目:把n個骰子扔在地上,所有骰子朝上一面的點數之和爲s。輸入n,打印出s的所有可能的值出現的概率。 思路:因爲暴力遞歸效率很低,這裏我就沒去看了。看一下優化的方法使用for循環 有些類似動態規劃,因爲f(n) = f(k-1)+f(

原创 算法學習之構建乘積數組

題目描述 給定一個數組A[0,1,...,n-1],請構建一個數組B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。 思路:嵌套循環這裏就

原创 算法學習之把字符串轉換成整數

題目描述 將一個字符串轉換成一個整數,要求不能使用字符串轉換整數的庫函數。 數值爲0或者字符串不是一個合法的數值則返回0 思路:思路其實很簡單清晰 1、判斷是否存在+-號,存在就標記下 2、正常按順序存取 3、判斷邊界Integer.

原创 算法學習之序列化二叉樹

題目描述 請實現兩個函數,分別用來序列化和反序列化二叉樹   二叉樹的序列化是指:把一棵二叉樹按照某種遍歷方式的結果以某種格式保存爲字符串,從而使得內存中建立起來的二叉樹可以持久保存。序列化可以基於先序、中序、後序、層序的二叉樹遍歷方式

原创 算法學習之二叉搜索樹與雙向鏈表

題目描述 輸入一棵二叉搜索樹,將該二叉搜索樹轉換成一個排序的雙向鏈表。要求不能創建任何新的結點,只能調整樹中結點指針的指向。 思路很簡單,但剛度題目時有些懵逼:中序遍歷二叉樹,然後調整指針即可。 /** public class T

原创 算法學習之複雜鏈表的複製

題目描述 輸入一個複雜鏈表(每個節點中有節點值,以及兩個指針,一個指向下一個節點,另一個特殊指針指向任意一個節點),返回結果爲複製後複雜鏈表的head。(注意,輸出結果中請不要返回參數中的節點引用,否則判題程序會直接返回空) 思路很簡

原创 算法學習之字符串的排列

題目描述 輸入一個字符串,按字典序打印出該字符串中字符的所有排列。例如輸入字符串abc,則打印出由字符a,b,c所能排列出來的所有字符串abc,acb,bac,bca,cab和cba。 輸入描述: 輸入一個字符串,長度不超過9(可能有

原创 算法學習之棧的壓入、彈出序列

題目描述 輸入兩個整數序列,第一個序列表示棧的壓入順序,請判斷第二個序列是否可能爲該棧的彈出順序。假設壓入棧的所有數字均不相等。例如序列1,2,3,4,5是某棧的壓入順序,序列4,5,3,2,1是該壓棧序列對應的一個彈出序列,但4,3,