[データ構造]ループ定義、タイプ、ループ関数、繰返しおよび比較
きょうせいじゅんかん
定義
定義の
ループ
循環関数の例
例(1)-階乗2479182
int factorial(int n) {
if (n <=1) return (1); //종료조건
else return ( n*factorial(n-1) ); //순환함수
}
factorial(5)= 5 * factorial(4)
= 5 4 factorial(3)
= 5 4 3 * factorial(2)
= 5 4 3 2 factorial(1)
= 5 4 3 2 1
= 120
例(2)-binsearch:所与のキー値を格納する配列a[]の位置(インデックス、mid)を検索する
binsearch (a[], key, left, right) {
if (left > right) {
return -1; //종료조건
} else {
mid = (right+left)/2;
if (key = a[mid]) return mid;
else if (key < a[mid]) return (binsearch(a, key, left, mid-1)); //순환호출
else if (key > a[mid]) return (binsearch(a, key, mid+1, right)); //순환호출
}
}
💡 アレイの数がソートされている場合のみ使用可能ループvs繰返し
繰り返し呼び出し
Reference
この問題について([データ構造]ループ定義、タイプ、ループ関数、繰返しおよび比較), 我々は、より多くの情報をここで見つけました https://velog.io/@beneficial/자료구조-순환-정의-종류-순환함수-반복과-비교テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol