Java leecode,14題:編寫一個函式來查詢字串陣列中的最長公共字首。如果不存在公共字首,返回空字串 ""。
編寫一個函式來查詢字串陣列中的最長公共字首。
如果不存在公共字首,返回空字串 ""
。
示例 1:
輸入: ["flower","flow","flight"] 輸出: "fl"
示例 2:
輸入: ["dog","racecar","car"] 輸出: "" 解釋: 輸入不存在公共字首。
說明:
所有輸入只包含小寫字母 a-z
。
class Solution { public String longestCommonPrefix(String[] strs) { String s=""; int judge=1; if(strs.length==0){//陣列為空直接返回"" return s; } for(int i=0;i<strs[0].length();i++){ char a=strs[0].charAt(i);//直接選擇第一個陣列元素,依次取這個字串的字元 for(int j=0;j<strs.length;j++){ if(i>=strs[j].length()){//因為每個字串長度不同,防止溢位 judge=0; break; } if(a!=strs[j].charAt(i)){ judge=0;//只要存在不同,直接退出 break; } else{ if(j==strs.length-1){ s=s+a; } } } if(judge==0){ break; } } return s; } }
相關推薦
Java leecode,14題:編寫一個函式來查詢字串陣列中的最長公共字首。如果不存在公共字首,返回空字串 ""。
編寫一個函式來查詢字串陣列中的最長公共字首。 如果不存在公共字首,返回空字串 ""。 示例 1: 輸入: ["flower","flow","flight"] 輸出: "fl" 示例 2: 輸入: ["dog","racecar","car"] 輸出: "" 解釋
面試題:編寫一個函式來查詢字串陣列中的最長公共字首。 如果不存在公共字首,返回空字串 ""。(c++實現)
例項說明 示例 1: 輸入: ["flower","flow","flight"] 輸出: "fl" 示例 2: 輸入: ["dog","racecar","car"] 輸出: "" 解釋: 輸入不存在公共字首。 說明: 所有輸入只包含小寫字母 a-z&
C++編寫一個函式來查詢字串陣列中的最長公共字首。如果不存在公共字首,返回空字串 ""。
設定一個臨時變數儲存第一個字串的每一位就可以了,比較第2-n個字串的是否一直相等 是的話儲存,不是的話返回之前的字串。 可能三個字串完全相同,所以最後還應該有一個return 示例 1: 輸入: ["flower","flow","flight"] 輸出: "f
LeetCode14 編寫一個函式來查詢字串陣列中的最長公共字首。 如果不存在公共字首,返回空字串 ""。
class Solution { public: string longestCommonPrefix(vector<string>& strs) { if(strs.size() == 0)
輸入一個整數陣列,實現一個函式來調整該陣列中數字的順序,使得所有的奇數位於陣列的前半部分, 所有的偶數位於陣列的後半部分,並保證奇數和奇數,偶數和偶數之間的相對位置不變。
/** * * 輸入一個整數陣列,實現一個函式來調整該陣列中數字的順序,使得所有的奇數位於陣列的前半部分, * 所有的偶數位於陣列的後半部分,並保證奇數和奇數,偶數和偶數之間的相對位置不變。 * * */ public class Solution { public stati
輸入一個整數陣列,實現一個函式來調整該陣列中數字的順序,使得所有奇數位於陣列的前半部分,所有偶數位於陣列的後半部分。
1、基本實現:如果不考慮時間複雜度,最簡單的思路應該是從頭掃描這個陣列,每碰到一個偶數時,拿出這個數字,並把位於這個數字後面的所有的數字往前面挪動一位。挪完之後在陣列的末尾有一個空位,這時把該偶數放入這個空位。由於沒碰到一個偶數就需要移動O(n)個數字,因此總的時間複雜度是O
劍指offer題目描述 輸入一個整數陣列,實現一個函式來調整該陣列中數字的順序,使得所有的奇數位於陣列的前半部分,所有的偶數位於位於陣列的後半部分,並保證奇數和奇數,偶數和偶數之間的相對位置不變。
牛客網劍指offer線上程式設計: 方法一:利用兩個指標,實現了是陣列奇數在前偶數在後,但通過不了測試用例,因為改變了奇數和奇數,偶數和偶數之間的相對位置 class Solution { public: void reOrderArray(vector<in
Java 實訓3:編寫一個窗體程式模擬單詞拼寫。
package 實訓三; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.event.A
前端演算法:給定兩個陣列,編寫一個函式來計算它們的交集(兩個陣列的交叉點)
給定兩個陣列,編寫一個函式來計算它們的交集。 例1: 輸入: nums1 = [1,2,2,1],nums2 = [2,2] 輸出:[2,2] 例2: 輸入: nums1 = [4,9,5],nums2 = [9,4,9,8,4] 輸出:[4,9] 注意: 結果
python練習:編寫一個函式isIn,接受兩個字串作為引數,如果一個字串是另一個字串的一部分,返回True,否則返回False。
python練習:編寫一個函式isIn,接受兩個字串作為引數,如果一個字串是另一個字串的一部分,返回True,否則返回False。 重難點:定義函式的方法。使用str型別的find()函式,可以查詢多個字元。第二種方法為把字串轉化為字元佇列,然後遍歷尋找,但是隻可以尋找一個字元。 1 print(
Python練習題6(判斷是否迴文聯):編寫一個函式,判斷傳入的字串引數是否為“迴文聯”(迴文聯即用迴文形式寫成的對聯,既可順讀,也可倒讀。例如:上海自來水來自海上)
方法一:將字串分成兩半,將第一個和最後一個字元進行比較,若一樣則返回True.全部為True則為迴文聯 1 def isPalindrome(): 2 context = input("請輸入字串:") 3 len_half = len(context) // 2
Python練習題7(統計不同字元數量):編寫一個函式,分別統計出傳入字串引數(可能不只一個引數)的英文字母、空格、數字和其它字元的個數(比如:'hello world,123456,Change the world by program!',這句話有字母33個,數字6個,空格5個,
方法一:用內建方法isdigit()判斷數字,isspace()判斷空格,isalpha()判斷字母,然後格式化輸出 1 def str_count(msgs): 2 letter_count = 0 3 num_count = 0 4 space_count = 0
程式設計題:編寫一個程式碼,將“i am from shanghai”倒置為“shanghai from am i”
題目要求:編寫一個程式碼,將“i am from shanghai”倒置為“shanghai from am i”,即將句子中單詞的位置調換, 但不改變單詞內部的順序 #include <stdio.h> #include
2的n次冪,判斷一個數是否能寫成m個2相乘,LeetCode 231號問題 給定一個整數,編寫一個函式來判斷它是否是 2 的冪次方。
2的n次冪,判斷一個數是否能寫成m個2相乘,LeetCode 231號問題 給定一個整數,編寫一個函式來判斷它是否是 2 的冪次方。 示例 1: 輸入: 1 輸出: true 解釋: 20 = 1 示例 2: 輸入: 16 輸出: true 解釋: 24 = 16 示例 3:
LeetCode 100 給定兩個二叉樹,編寫一個函式來檢驗它們是否相同。 如果兩個樹在結構上相同,並且節點具有相同的值,則認為它們是相同的。
給定兩個二叉樹,編寫一個函式來檢驗它們是否相同。 如果兩個樹在結構上相同,並且節點具有相同的值,則認為它們是相同的。 /** * Definition for a binary tree node. * struct TreeNode { *
給定n對括號,編寫一個函式來生成正確括號的所有組合。
本題源自leetcode ----------------------------------------------------------------------------------------------- 思路: 1 用回溯法。用變數m 表示左括號的數量。n
一道能做出來就腳踢BAT的高難度演算法題:在元素重複三次的陣列中查詢重複一次的元素
我們看一道難度很高的查詢類演算法題,如果你真能在一小時內給出正確的演算法和編碼,那麼你隨便在BAT開口年薪一百萬都不算過分。我們先看題目:給定一個數組,它裡面除了一個元素外,其他元素都重複了三次,要求在空間複雜度為O(1),時間複雜度為O(n)的約束下,查詢到只重複了一次的元素。 在
實現atoi這個函式,將一個字串轉換為整數。如果沒有合法的整數,返回0。如果整數超出了32位整數的範圍,返回INT_MAX(2147483647)如果是正整數
public class Solution { /** * @param str: A string * @return: An integer */ public int atoi(String str) { // write your code here
20190501-編寫一個函數來查找字符串數組中的最長公共前綴。如果不存在公共前綴,返回空字符串
rac 基準 pan key type 最長 題目 long common 題目描述 編寫一個函數來查找字符串數組中的最長公共前綴。 如果不存在公共前綴,返回空字符串 ""。 示例 1: 輸入: ["flower","flow","flight"] 輸出: "fl
返回一個首尾相連的整數陣列中最大子陣列的和數
設計思路:只要找到從A[0]開始和最大的一段(A[0]…..A[j])(0 <= j < n) 以及以A[n-1]結尾的和最大的一段(A[i]…..A[n-1])(0 <= i < n) 該種情況的最大值為A[i]+…..+A[n-1]+A[0]+….+A[j] 如果i <