串是什麼?
串(string)是由零個或多個字元組成的有限序列,又名叫字串
空格串:是只包含空格的串,注意他與空串的區別,空格串是有內容有長度的,二期可以不止乙個空格子串和主串:串中任意個數的連續字元組成的子串行稱為該串的子串,相應的,包含子串的串稱為主串
串的比較:
串的比較是通過組成串的字元之間的編碼來進行的,而字元的編碼指的是字元在對應字符集中的序號
計算機中常用的字元是使用標準的ascii編碼,是由7位二進位制數表示的乙個字元,總共可以表示128個字元
後來由於一些特殊符號的出現,128個是不夠用的,擴充套件ascii碼由8位二進位制數表示乙個字元,總和可以表示256個字元,基本可以滿足英語為主的語言和特殊字元需要
不過對於全世界估計要成百上千種語言,256個字元肯定是不夠的,於是有了unicode編碼,常用16位的二進位制表示乙個字元,總共可以表示216個字元,約65萬多字元,足夠表示世界上所有語言的所有字元,為了相容,其前256個字元與ascii相同
所以我們比較串,必須他們串的長度和他們對應位置的字元都相等時,才算是相等
串的抽象資料型別:
串的邏輯
數字組合不重複的演算法
用1,2,3,4四個數字,組成沒有重複數字的四位數的個數是 4!也就是24個。其他的比如1,2,3,4,5的組合是5 具體的演算法如下 用遞迴的方法來解答的 int32 num ilistlists num.tolist ilistresults new list for int32 i 0 i n...
正則是如何判斷有重複 由不重複的數字組成的串的。
源自這裡 d 1.這個判斷了有重複的數字 原理 是非貪婪,從最少的數量試起 是0 無窮大次。最小就是0 對於源串 1234567890 第一次 空 d 1 空 1 2 但是希望的是前面的捕獲組 d 的內容 也就是1,所以,第一次嘗試失敗。第二次 正則從最後面向前回退狀態,所以,先重新嘗試第二個 空 ...
JAVA 判斷一串字串是否由數字組成
思想 判斷一串字串是否由數字組成 public class teststring11 20 else 此處if else語句也可寫成三目語句,結果一樣 該字串由數字組成 該字串不是由數字組成 1,將字串轉化成字元陣列 2,遍歷陣列判斷有沒有非數字元素,若遇到非數字元素,直接返回false,若沒有,則...