leetcode-14

題目解釋:找出所有字符串共有的最長前綴  

這道題的思路:

         每次將較短的字符串定爲標準

string longestCommonPrefix(vector<string>& strs) 
  {
        int i,len,nums=strs.size();
        string stander=strs[0];
        for(i=1;i<nums;i++)
        {
            len=stander.length() < strs[i].size() ? stander.length():strs[i].size();//取較短的字符串的長度作爲標準
            int j=0;
            while(j<=len)//找出第一個不相同的位置
            {
        	if(stander[j]!=strs[i][j])
        	break;
        	j++;
	     }
	   stander=stander.substr(0,j); //每比較一次返回新的公共前綴
	}
	    return stander;
	
 } 

一開始不會用c++裏的vector容器,百度了之後,發現這個容器很好用。http://blog.csdn.net/longshengguoji/article/details/8507394這是CSDN裏有關vector的鏈接。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章