陣列字串系列之 刪除輸入字串中重複的字元

2021-06-22 16:14:31 字數 555 閱讀 8492

方法1:從頭到尾掃瞄字串中的字元,每訪問乙個字元,就將該字元到尾部之間的重複元素刪除(可以設定為『\0』),時間複雜度n^2。

方法2:開闢乙個長度為256的bool陣列,標記字元的出現。掃瞄一遍即可,限行時間複雜度n。

c++實現

void remove_repeat1(char s)

{ bool flag[256];

memset(flag,0,sizeof(flag));

int len = strlen(s);

for(int i=0;i

python實現

def remove_repeat(ss):

flag = [0]*256

result =

length = len(ss)

for i in range(0,length):

if flag[ord(ss[i])] ==0:

flag[ord(ss[i])] = 1

else:

pass

print(result)

無冗餘輸入字串 字串陣列 字串陣列

問題 輸入乙個數字n,接下來輸入n個字串,要求無冗餘地儲存字串 分析 參考到無冗餘地字串輸入 使用動態分配。本題還參考了這個鏈結的內容 1 include include int main char p int ns,i scanf d ns p char malloc sizeof char fo...

無冗餘輸入字串 字串陣列 字串

問題 無冗餘 輸入乙個字串 分析 無冗餘 是指儲存的空間不能有冗餘的,比如,要存的陣列長度是10 加上 0 是11 不可以定義陣列為char str 20 這樣還會有8個位元組 還是9個位元組?的空間沒被用,就算是冗餘,因此不能事先分配乙個足夠大的空間,也就不好用陣列實現,然後應該用指標實現 參考的...

字串,字串陣列,字串指標!!

字串 字元陣列實際上是一系列字元的集合,也就是 字串 string 字串陣列 在c語言中,沒有專門的字串變數,沒有string型別,通常就用乙個字元陣列來存放乙個字串。c語言規定,可以將字串直接賦值給字元陣列 在c語言中,字串總是以 0 作為串的結束符。上面的兩個字串,編譯器已經在末尾自動新增了 0...