C++の文字列の長さに従って文字列の配列を並べ替えます
ここでは、文字列のリストを長さに基づいて並べ替える方法を説明します。したがって、文字列の文字数が少ない場合は、それが最初に配置され、次に他の長い文字列が配置されます。文字列が
であると仮定しますstr_list = {“Hello”, “ABC”, “Programming”, “Length”, “Population”}
並べ替えると、-
になります。str_list = {“ABC”, “Hello”, “Length”, “Population”, “Programming”}
ここでは、それらを並べ替えるための独自の比較ロジックを作成します。その比較ロジックは、C++STLの並べ替え関数で使用されます。
アルゴリズム
compare(str1, str2): Begin if length of str1 < length of str2, then return 1 return 0 End
例
#include<iostream> #include<algorithm> using namespace std; int compare(string str1, string str2){ if(str1.length() < str2.length()) return 1; return 0; } main(){ string str_list[] = {"Hello", "ABC", "Programming", "Length", "Population"}; int n = 5; sort(str_list, str_list + n, compare); for(int i = 0; i<n; i++){ cout << str_list[i] << " "; } }
出力
ABC Hello Length Population Programming
-
C++での大文字と小文字を区別しない文字列の比較
C ++では、標準ライブラリに文字列があります。このプログラムでは、2つの文字列が同一であるかどうかを確認する方法を説明します。この場合、ケースは無視されます。 ここでのロジックは単純です。文字列全体を小文字または大文字の文字列に変換し、それらを比較して、結果を返します。 アルゴリズムライブラリを使用して、文字列を小文字の文字列に変換する変換関数を取得しました。 Input: Two strings “Hello WORLD” and “heLLO worLD” Output: Strings are same アルゴリズム Step 1:
-
C++で文字列を乗算する
文字列として2つの数字があるとします。それらを乗算し、結果を文字列で返す必要があります。したがって、数値が「26」と「12」の場合、結果は「312」になります これを解決するには、次の手順に従います- 2つの引数xとyを取ると、xがyを除算することを示します x<-Infinityおよびy=1の場合、無限大を返します a:=| x |、b:=| y |およびans:=0 =0 p:=0 =0 p:=p + 1 a:=a –(左シフトb、p回) ans:=ans+左シフト1p回 0も真の場合は、ansを返します。それ以外の場合は、(– ans)を返します。