Re: [問題] 有關於字串的問題

看板C_and_CPP (C/C++)作者 (水無月真夜)時間16年前 (2009/10/01 10:24), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《ufo0972 ()》之銘言: : 想請問大家有關於字串的問題, : 就是宣告一個array,然後在裡面在不同的字串,例如data[3]={"amy","kobe","jerry"}; : 把這些字串弄好後取出各個字母的第一個字去陣列排序,然後做binary search, : 現在問題來了,我是用char*data[]去儲存多個字串,可是我不知道怎麼取第一個字, : 請各位大大可以告訴我要使用什麼方法才可以取出來嗎?謝謝大家!~ : 另外我知道string可以取出字元,可是要怎麼排序我就不知道了~ : #include<iostream> : #include<string> : using namespace std; : void main() : { : string str1("amy"); : string str2("bob"); : string str3("katy"); : char data[]={str1[0],str2[0],str3[0]}; 你這樣只有存三個字元下來 char[3] data裡面的內容是"abk"... : for(int i=0;i<3;i++) : for(int j=0;j<2-i;j++){ : if(data[j]>data[j+1]) swap(data[j],data[j+1]);} : } : } : 再來我就不知道要如何進行了,因為無法排陣列,請大家給點意見,謝謝! 既然都要用std::string了 當然是用std::vector搭配std::sort binary search也有std::lower_bound、std::upper_bound、std::equal_range std::vector<string> data; data.push_back(string("amy")); data.push_back(string("bob")); data.push_back(string("katy")); std::sort(data.begin(), data.end()); 大概是這樣的用法.. 如果沒用過STL,Google一下就有很多reference 不然找本書來看也可以.. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.15.163

10/01 10:58, , 1F
恩~STL我是沒有學過,那我先去在去GOOOLE看看好了~謝謝
10/01 10:58, 1F

10/01 11:45, , 2F
沒錯,STL 好用到破表 (驚豔!)
10/01 11:45, 2F
文章代碼(AID): #1An1BuqO (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1An1BuqO (C_and_CPP)