原创 撲克牌的順子

題目: 從撲克牌中隨機抽5張牌,判斷是不是一個順子,即這5張牌是不是連續的。2~10爲數字本身,A爲1,J爲11,Q爲12,K爲13,而大、小王可以看成任意數字。 解題思路: 1.排序數組; 2.統計數組中0的個數和非0數字之間的空缺總

原创 數組中的逆序對

題目: 在數組中的兩個數字,如果前面一個數字大於後面的數字,則這兩個數字組成一個逆序對。輸入一個數組,求出這個數組中的逆序對的總數P。並將P對1000000007取模的結果輸出。 即輸出P%1000000007 解題思路: 1.歸併排序

原创 歸併排序及java實現

思路: 1.分爲兩段分別進行段內排序 (0,8)   (0,4)(5,8)   (0,2)(3,4)(5,6)(7,8)   (0,1) 2.合併,進行段間排序 java實現 public class MergeSor

原创 和爲S的兩個數字 & 和爲S的連續正數序列

一. 和爲S的兩個數字 題目: 輸入一個遞增排序的數組和一個數字S,在數組中查找兩個數,是的他們的和正好是S,如果有多對數字的和等於S,輸出兩個數的乘積最小的。 解題思路: 1.定義兩個指針,分別指向第一個數字和最後一個數字; 2.如

原创 翻轉單詞順序&左旋轉字符串

一.翻轉單詞順序 題目: 輸入一個英文句子,翻轉句子中單詞的順序,但單詞內字符的順序不變。爲簡單起見,標點符號和普通字母一樣處理。例如輸入字符串“I am a student.”,則輸出 “student. a am I”。 解題思路:

原创 Java面試常考知識點總結

1.抽象類和接口的區別    1)抽象類可以提供成員方法的實現細節,而接口中只能存在public abstract 方法;    2)抽象類中的成員變量可以是各種類型的,而接口中的成員變量只能是public static final類

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

題目: 在一個字符串(1<=字符串長度<=10000)中找到第一個只出現一次的字符,並返回它的位置。 解題思路: 1.共遍歷兩次字符串,第一次遍歷統計每個字符出現的次數,第二次遍歷遇到次數爲1的字符返回它的位置即可。 2.char佔一個

原创 求1+2+...+n

題目: 求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等關鍵字及條件判斷語句(A?B:C)。 解題思路: 1.利用&&的短路特性實現遞歸終止。 2.當n==0時,(n>0)&&((s

原创 不用加減乘除做加法

題目: 寫一個函數,求兩個整數之和,要求在函數體內不得使用+、-、*、/四則運算符號。 解題思路: 1.不帶進位的加:num1 ^ num2 2.進位:(num1 & num2) << 1 解法一(遞歸) java實現: public

原创 整數中1出現的次數(從1到n整數中1出現的次數)

題目: 求出1~13的整數中1出現的次數,並算出100~1300的整數中1出現的次數?爲此他特別數了一下1~13中包含1的數字有1、10、11、12、13因此共出現6次,但是對於後面問題他就沒轍了。ACMer希望你們幫幫他,並把問題更加普

原创 二分查找及其相關算法的java實現

二分查找 總結: 1. 當要查找第一次出現的數(最左),mid下取整; 2. 當要查找最後一次出現的數(最右),mid上取整; 相關算法1:找一個數,如果有,返回任意一個(返回true),否則返回false /** * 找

原创 463. Island Perimeter

You are given a map in form of a two-dimensional integer grid where 1 represents land and 0 represents water. Grid cell

原创 醜數

題目: 把只包含因子2、3和5的數稱作醜數(Ugly Number)。例如6、8都是醜數,但14不是,因爲它包含因子7。 習慣上我們把1當做是第一個醜數。求按從小到大的順序的第N個醜數。 解題思路: 1.已有的醜數按順序存放在數組中,對乘

原创 排列組合算法總結(含Java實現)

一. 排列組合 1. 排列 (1)排列:從n個元素中排列m個元素。 Amn=n∗(n−2)∗...∗(n−m+1)=Cmn∗m! (2)全排列:把n個元素全部排列。 Ann=n!=n∗(n−1)∗...∗1 2. 組合 組合:從n個元素中

原创 把數組排成最小的數

題目: 輸入一個正整數數組,把數組裏所有數字拼接起來排成一個數,打印能拼接出的所有數字中最小的一個。例如輸入數組{3,32,321},則打印出這三個數字能排成的最小數字爲321323。 解題思路: 1.本題可抽象爲一個排序問題,把數組按從