私はCでいくつかの便利な関数を書いています。そのうちの1つはですisPalindrome()
。
数が回文であるかどうかを判断するために考えました、私はすべきです...
- 配列内のすべての桁を取得します
- 2つのインデックスで反復します-1つは0から開始し、もう1つは配列カウントまで開始します
- インデックスが一致している間、配列に添え字を付けながらインデックスをインクリメント/デクリメントし、配列カウントが0になると、回文が発生します(つまり、すべての桁を調べ終えます)。
私が思いついた...
int isPalindrome(int num) {
int places[100];
int i = 0;
while (num > 0) {
places[i++] = num % 10;
num /= 10;
}
int j = 0;
while (i >= 0 && places[j++] == places[--i]) {
}
return i == -1;
}
これは一般的にどのように行われるのですか?
私は自分でCを学んでいます。コードがいつコンパイルされ、何かを解決するのに1日もかからないことはわかりますが、正しい方向に進んでいるかどうかを知る専門家の目はありません。
それで、私のコードに関する改善や提案はありますか?
どうもありがとう!