題目:實現乙個演算法,確定乙個字串的所有字元是否都不相同。
解答:總共有256個字元,可以申請乙個布林陣列,初始化都為false.遍歷所有字元,把字元對應到布林陣列,如果陣列該位為true,則說明之前該字元出現過,否則修改值為true。
bool same(char *str)
; for(int i=0;i
擴充套件:1.如果所有字元都是『a'-'z',可以只用乙個int型的test儲存空間,test對應32位,』a'-'z'總共26個字元,每個字元佔一位。某個字元出現過,將test該位設為1.
bool same(char *str)
,i; for(i=0;i
確定乙個字串的所有字元是否全都不同
題目 給定乙個string inistring 請返回乙個bool值,true 代表所有字元全都不同,false 代表存在相同的字元。保證字串中的字元為ascii字元。字串的長度小於等於3000。思路 用乙個int做位運算,乙個int4個位元組32位,一共26個字母綽綽有餘。include incl...
確定乙個字串的所有字元全都不同演算法實現
首先要確認字串的編碼方式,是ascii還是unicode,這很重要。我們就當是ascii來處理吧,如果不是的話,只需要擴大儲存空間就可以了,其餘邏輯都是一樣的。演算法一 演算法的中心思想是利用雜湊表的原理,先初始化乙個陣列,然後迴圈取出字元,將下標為此字元的ascii值的位置置為true,如果將要儲...
SQL 判斷乙個字串是否在另外乙個字串中
eg str1 admin str2 1234,123admin,xcxx 比較str1是否在str2中 用常用的charindex,返回肯定是有值的,這裡自己動手寫乙個方法 檢查乙個字串是否在另外乙個字串中數,另外乙個字串元素用,隔開 create function dbo checkstrina...