java演算法題:存在重複
題目:
給定一個整數陣列,判斷是否存在重複元素。
如果任何值在陣列中出現至少兩次,函式返回 true。如果陣列中每個元素都不相同,則返回 false。
示例 1:
輸入: [1,2,3,1]
輸出: true
示例 2:
輸入: [1,2,3,4]
輸出: false
示例 3:
輸入: [1,1,1,3,3,4,3,2,4,2]
輸出: true
程式碼:
class Solution { public boolean containsDuplicate(int[] nums) { //將陣列進行排序,然後比較相鄰位是否有相等值 Arrays.sort(nums); for(int i = 1; i < nums.length; i++) { if (nums[i] == nums[i - 1]){ return true; } } return false; } }
相關推薦
java演算法題:存在重複
題目: 給定一個整數陣列,判斷是否存在重複元素。 如果任何值在陣列中出現至少兩次,函式返回 true。如果陣列中每個元素都不相同,則返回 false。 示例 1: 輸入: [1,2,3,1] 輸出: true 示例 2: 輸入: [1,2,3,4] 輸出: false
java演算法題:從排序陣列中刪除重複項
題目: 給定一個排序陣列,你需要在原地刪除重複出現的元素,使得每個元素只出現一次,返回移除後陣列的新長度。 不要使用額外的陣列空間,你必須在原地修改輸入陣列並在使用 O(1) 額外空間的條件下完成。 示例1: 給定陣列 nums = [1,1,2], 函式應該返回新的長度 2
java演算法題:只出現一次的數字
題目: 給定一個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素。 說明: 你的演算法應該具有線性時間複雜度。 你可以不使用額外空間來實現嗎? 示例 1: 輸入: [2,2,1] 輸出: 1 示例 2: 輸入: [4,1,2,1
java演算法題:買賣股票的最佳時機 II
題目: 給定一個數組,它的第 i 個元素是一支給定股票第 i 天的價格。 設計一個演算法來計算你所能獲取的最大利潤。你可以儘可能地完成更多的交易(多次買賣一支股票)。 注意:你不能同時參與多筆交易(你必須在再次購買前出售掉之前的股票)。 示例 1: 輸入: [7,1,5,3,
一道能做出來就腳踢BAT的高難度演算法題:在元素重複三次的陣列中查詢重複一次的元素
我們看一道難度很高的查詢類演算法題,如果你真能在一小時內給出正確的演算法和編碼,那麼你隨便在BAT開口年薪一百萬都不算過分。我們先看題目:給定一個數組,它裡面除了一個元素外,其他元素都重複了三次,要求在空間複雜度為O(1),時間複雜度為O(n)的約束下,查詢到只重複了一次的元素。 在
LeetCode演算法題:JAVA實現整數反轉reverse integer
題目來源:LeetCode Reverse digits of an integer. Example1: x = 123, return 321 Example2: x = -123, re
演算法題:1的數目
給定一個十進位制正整數N,寫下從1開始,到N的所有正整數,然後數一下其中出現的所有“1”的個數。例如:N =12,我們會寫下1,2,3,4,5,6,7,8,9,10,11,12。這樣1出現的個數為5 java程式碼實現 public class demo1 { public st
演算法題:求N!末尾0的個數和求二進位制數中1的個數
1、給定一個整數,那麼N的階乘N!末尾有多少個0呢? 解題思路:N!=K*10^M,M的值即為N!末尾0的個數。又10^M=(2^M)*(5^M),因為一個數進行質因數分解後,2出現的概率比5大得多。所以只有計算出1到N包含多少個5的因子 public class demo2 {
演算法題:火車站
思路很簡單,如果出棧的元素存在於入站的佇列中但是該元素不是棧頂元素,那麼該出棧佇列不可能存在。 #include <iostream> using namespace std; int main() { int num; int n[100]; ci
一道簡單的演算法題:不借助第三變數來交換兩個變數的值
今天做筆試碰到一道簡單的演算法題:不借助第三變數來交換兩個變數的值,記錄一下。 交換兩個變數的值的普遍做法都是藉助第三變數,這樣具有較高的可讀性。 a = 3 b = 5 t = a a = b b = t 但是,如果記憶體有限,只允許用2個變數呢? 強大的CS當然有辦法解決
演算法題:A與B玩遊戲若干輪,獲勝方獲得該輪分數,已知結束後A,B得分,求A最少獲勝次數
描述 A與B玩遊戲若干輪,獲勝方獲得該輪分數,已知結束後A,B得分,求A最少獲勝次數。 例如:A第1輪獲勝則A加1分,B不得分,A第2輪獲勝則A加2分,B不得分,以此類推。遊戲結束A共x分,B共y分,求A在所有輪次比賽中獲勝最少次數。 輸入:A,B遊戲結束
java演算法題 - 1 如何輸入aaabbcaa,輸出a3b2ca2
/* * 寫一個函式把連續字串壓縮,無需考慮編碼 * 輸入“aaabbcaa” 輸出“a3b2ca2” * 輸入“a” 輸出“a” */ public class ZipLetters{ public static void main(String args[]){
演算法題:最長迴文子串(C#實現)
給定一個字串 s,找到 s 中最長的迴文子串。你可以假設 s 的最大長度為 1000。 示例 1: 輸入: "babad" 輸出: "bab" 注意: "aba" 也是一個有效答案。 示例 2: 輸入: "cbbd" 輸出: "bb
藍橋杯演算法題:十六進位制轉8進位制
問題描述 給定n個十六進位制正整數,輸出它們對應的八進位制數。 輸入格式 輸入的第一行為一個正整數n (1<=n<=10)。 接下來n行,每行一個由09、大寫字母AF組成的字串,表示要轉換的十六進位制正整數,每個十六進位制數長度不超過10
演算法題:字母圖形
問題描述 利用字母可以組成一些美麗的圖形,下面給出了一個例子: ABCDEFG BABCDEF CBABCDE DCBABCD EDCBABC 這是一個5行7列的圖形,請找出這個圖形的規律,並輸出一個n行m列的圖形。 輸入格式 輸入一行,包含兩個整數n和m,分別
演算法題:假設一列火車一共經過10個車站,車站按順序為 A B C D E F G H I J ,編寫一個程式,自動計算剩餘的票
假設一列火車一共經過10個車站,車站按順序為 A B C D E F G H I J ,編寫一個程式,自動計算剩餘的票 要求:1 假設火車有100個座位 2.程式可以輸入購買車票的起始站與結束站 3.輸入後,程式輸出剩餘車票,
面試現場簡單幾道java演算法題, 你能寫出幾道?
這兩天小編逛論壇的時候發現一個很有意思的事情,就是一位網際網路公司的面試官分享的,他們最近想招一批java的實習生,所以他們的面試題並不難,但是前來面試的人,卻很多都掛在了幾道演算法題上,要麼就是邏輯不嚴謹,要麼就是題目都看不懂的,還有就是書寫錯誤的,這讓他感到很詫異,畢竟演算法其實對於程式設計師來
Google演算法題:M-求二叉搜尋樹的第K小的數
給出一個二叉搜尋樹,寫出一個方法,求出樹中的第k小的數 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode le
java 演算法題 - 面試中常見的位操作演算法題
前言 上一篇部落格 聊一聊 Android 中巧妙的位操作 中,我們講解了 java 中常用的位運算及常用應用場景,今天,讓我們一起來看一下,面試中常見的位操作的演算法題。 兩個只出現一次的數字 【題目描述】一個整型數組裡除了兩個數字之外,其他的數字都出現了兩次。請寫程
面試演算法題:求a+aa+aaa+aaaa+aa...a的值
題目 求s=a+aa+aaa+aaaa+aa…a的值,數字個數為n,其中a是一個數字。例如2+22+222+2222+22222(此時n=5) 思路 由於aa…a是一個整數,這樣基本排除要考慮越界問題,所以不用往大數方向考慮。 個位