最近在讀洞庭散人的程式《基於k-means文字聚類》,作為c++學習的起航船。發現他的**無法執行。而且**中有錯誤。於是就在此開博更正。
#include
<
iostream
>
#include
<
vector
>
#include
<
algorithm
>
#include
<
string
>
#include
<
cmath
>
#include
<
locale
>
using
namespace
std;
bool
myfunction(
string
s1,string
s2)return
false;}
string
mytolower(
string
src)
return
result;
}int
main ()
transform(strvec.begin(),strvec.end(),strvec.begin(),mytolower);
cout
<<
"before unique operation
"<<
endl;
for(
inti=0
;i<
strvec.size();i++)
it=unique(strvec.begin(),strvec.end(),myfunction);
strvec.resize(it
-strvec.begin());
cout
<<
"after unique operation
"<<
endl;
for(
inti=0
;i<
strvec.size();i++)
intend;
scanf("%d
",&end);
return0;
}
字串去重
字串去重,思路是在乙個字串例如 strstrrtsiiiinnnggggg 中,遍歷所有的字元,拼接到stringbuffer中。在執行速度上來看stringbuffer的拼接速度要快與string。通過str.charat i 的方法得到當前遍歷到的字元。通過indexof方法得到該字元第一次出現...
字串去重
doctype html en utf 8 viewport content width device width,initial scale 1.0 document title head 思路 1.宣告乙個空字元 2.將需要去重字元,乙個乙個新增到空字串中 條件 s裡面沒有這個字元,就加進去 v...
字串右旋 字串去重
1.將n個字元的陣列,迴圈右移k位。時間複雜度o n 實現思路 兩種實現思路 1.借助輔助空間,按照後面的順序進行拷貝,最後拷貝回字串 2.三次反轉法就可實現 include void rotatekth char str,int size,int k 2.附加題 刪除小寫字母字串中重複字元。如果可...