電話番号の17.Letter組み合わせ(char *文字列との相互変換)

leetcode 17の質問とお互いにchar *文字列を解析

char *(またはchar)トランスフェクションした文字列のコンストラクタは、文字列を見ることができます
デフォルト(1)文字列(); 
コピー(2)文字列(のconst文字&STR); 
ストリング(3)文字列(CONST文字列&STR、size_tのPOS、size_tのLEN = NPOなど); 
C-列(4)文字列(CONSTのchar *秒)から
バッファから(5)の文字列(CONSTのchar * sで、size_tのN); 
(size_tのN、チャーC)(6)文字列を埋める; 
レンジ(7)テンプレート<クラスInputIterator> //ベクトル<ストリング> V; 
                                                        //str(v.begin()、v.end()); 
                         文字列(InputIteratorまず、InputIterator最後); 
初期化子リスト(8)文字列(initializer_list <CHAR>イリノイ州) ; 
移動(9)の文字列(文字列&& STR)noexcept。
1. CHAR * - >文字列文字列s(アドレス、N)または文字列s(アドレス)。
2.チャー - >文字列文字列s(N个チャー、チャー)
 
 
3.文字列 - > CHAR * strcpyの(アドレス、str.c_strを())を使用しました。
ストリング転送のchar *は、文字列によって提供c_str()またはデータ()関数を使用することができます。
c_str()関数は、文字の配列、およびデータ(の「\ 0」末端)に戻り、ここで、「0 \」末端の文字を含まない、唯一の文字列の内容を返します。
c_str()は、一時的なポインタを操作することはできませんを返します。そして、これはそのポインタ値を変更し、元のデータ列を指す、文字列が変更されます。
書式#include <iostreamの> 
の#include <ベクトル> 
の#include < 文字列 > 使用して名前空間  はstdを、クラス解決{ パブリック
    ベクトル < ストリング > letterCombinations(文字列の数字){ 
        ベクトル <ベクトル< チャー >>電話{{ ' A '' B '' C ' }、{ ' D '' E '' F '

 



G ' ' H ' ' I ' }、{ ' J ' ' K ' ' L ' }、{ ' M ' ' N ' ' O ' }、{ ' P ' ' Q ' ' R ' ' S ' }、{ ' T ' 'V ' }、{ ' W ' ' X ' ' Y ' ' Z ' }}。
        もし(digits.empty())   戻りベクトル< ストリング > {}; 
        
        ベクター < ストリング > resNext = letterCombinations(digits.substr(1 ))。
        
        INT curNum =桁[ 0 ] - ' 0 ' - 2 
        ベクター < CHAR > VC(電話[curNum])。
        ベクター< 文字列 > resCur。
        
        (オート&{:VC毎)
            ベクトル < ストリング > TEMP(resNext)。
            // 这一行不能丢、一時为空的时候char->の文字列
    
            であれば(temp.empty()){ ストリング S(&それぞれ、1); resCur.push_back(S)引き続き;}
             ための(自動&STR:TEMP){ 
                STR =それぞれ+ STR。
            } 
            resCur.insert(resCur.end()、temp.begin()、temp.end())。
        } 
        戻りresCur。        
    } 
}。

int型メイン(){ 
    解sol。
    文字列の数字= " 23 " ; 
    ベクター < ストリング >のRES =のsol.letterCombinations(桁)。
    以下のためにint型私= 0 ; iが(res.sizeを<); ++ I){ 
        COUT << RES [I] << ENDL。
    } 
}

 

おすすめ

転載: www.cnblogs.com/zx-y/p/11497572.html