比較兩個字串A和B,確定A中是否包含B中所有的字元。字串A和B中的字元都是大寫字母:
給出 A = "ABCD" B = "AABC", 返回 false
給出 A = "ABCD" B = "ACD",返回 true
我的程式碼:
/** * 由於是在字串strA中確定是否包含字串strB中的所有字元<br/> * 故只需要將字串strB中的每一個字元在字串strA中遍歷,當在字串strA中不存在時,則直接返回false<br/> * 當存在是,則進行字串strB的下一個字元查詢<br/> * @param strA * @param strB * @return */ public boolean compareStrings(String strA, String strB) { int aLen = strA.length(); int[] arr = new int[aLen]; for (int i = 0; i < aLen; i++) { arr[i] = 0; } boolean flag = true; for (int i = 0, bLen = strB.length(); i < bLen; i++) { flag = false; for(int j = 0;(j < aLen) && (!flag);j ++){ if (strB.charAt(i) == strA.charAt(j) && arr[j] == 0) { arr[j] = 1; flag = true; } } if (!flag) { break; } } return flag; }
還有種比較牛的
思路:統計兩邊的資訊進行比較。如果B中的每種字元的個數小於等於A中的,則A包含B。
參考資料:http://www.jianshu.com/p/f7f9987f1bbb
int Achar[26];//儲存字串的每個字母個數 int Bchar[26]; for (int i = 0; i<26; i++) { Achar[i] = 0; Bchar[i] = 0; } int Adate,Bdate;//記錄AB的字元統計資料 int countA = A.length(); int countB = B.length(); for (int i = 0; i<countA; i++) { int index; index = A[i] - 65; Achar[index]++; } for (int i = 0; i<countB; i++) { int index; index = B[i] - 65;//65為大寫A的ASCⅡ碼值 Bchar[index]++; } for (int i = 0; i<26; i++) { if (Achar[i]<Bchar[i]) return false; } return true; }
LintCode 字串比較
相關文章
- 字串比較字串
- 字串-簡單字串比較字串
- 比較字串和數字串字串
- PHP比較字串PHP字串
- JAVA字串比較Java字串
- 比較字串和數字串(續)字串
- Delphi中字串比較大小 VS Oracle-SQL中字串比較大小字串OracleSQL
- python字串比較大小Python字串
- 字串拼接運算比較字串
- JavaScript字串如何比較大小JavaScript字串
- shell 下的字串比較字串
- oracle中字串的大小比較,字串與數字的比較和運算Oracle字串
- Java™ 教程(比較字串和字串的部分)Java字串
- Java 字串比較、拼接問題Java字串
- Java字串建立方式比較Java字串
- JavaScript 字串連線效能比較JavaScript字串
- 一個字串比較的題字串
- 字串比較的常用函式字串函式
- 字串大小寫轉換和字串的比較字串
- Pythondifflib字串比較指令碼Python字串指令碼
- shell比較兩個字串是否相等字串
- VC 中字串比較和查詢字串
- 844. 比較含退格的字串字串
- 使用String. localeCompare比較字串字串
- 演算法:比較含退格的字串演算法字串
- 16:忽略大小寫的字串比較字串
- python如何比較兩個字串是否相等Python字串
- 利用compareTo方法進行字串比較排序字串排序
- shell下數字和字串比較操作命令字串
- [shell基礎]——整數比較;字串比較;檔案測試;邏輯測試符字串
- 【C#】比較 Random 與 RandomNumberGenerator 生成隨機字串C#random隨機字串
- 漏洞解析——通用異常缺陷及字串比較缺陷字串
- C#比較兩個字串的相似度【轉】C#字串
- Swift3.0語言教程比較、判斷字串Swift字串
- python3中怎麼比較字串是否相等Python字串
- JAVA中字串比較equals()和equalsIgnoreCase()的區別Java字串
- 簡單介紹Go 字串比較的實現示例Go字串
- js 深比較和淺比較JS