Witam
mam kontener map<int, string>slowo_type; int jest zapisana długość słowa , w string słowo
i mam pytanie czy można z kontenera znaleźć słowa które np zaczynają się na literę h albo na 3 pozycji słowa jest k?
Witam
mam kontener map<int, string>slowo_type; int jest zapisana długość słowa , w string słowo
i mam pytanie czy można z kontenera znaleźć słowa które np zaczynają się na literę h albo na 3 pozycji słowa jest k?
Nie, to chyba oczywiste. Tzn oczywiście można ale musiałbyś to sam zaimplementować a chyba nie o to ci chodzi. Do szukania słów na jakąś literkę lepiej niż TreeMap nadaje się chyba drzewko Trie.
Można, ale nie jakąś magiczną metodą mapy, tylko na przykład po prostu, sprawdzając każde słowo po kolei.
Gdybyś miał słowa w set, albo w mapie jako klucz, czy w czymkolwiek innym, ale posortowane, wtedy znalazłyby się lepsze metody. ;) (Odnośnie słowa, które zaczyna się na daną literę, jeśli chcesz z jakąś literą w środku... No to w tym momencie nie widzę żadnego trywialnie prostego wyjścia, poza tym samym co powyżej.)
słowa w map jako klucz , a wtedy w jaki sposób by można to zrobić?
Ale czy wtedy wartość ma jakiś sens? :P Jeśli nie, to jest std::set
. Tak czy siak: http://www.cplusplus.com/reference/stl/set/lower_bound/
Pamiętaj tylko, że może Cię zaskoczyć porównywanie dużych i małych liter. To odnośnie szukania stringów ze znanymi początkowymi znakami.