録音---学習LUA、再帰アルゴリズムのバブルを書き込もう。
1 - 原理をバブリング:最初は第二よりも大きい場合、隣接する要素を比較し、それらの両者は交換しました。 2 。3 TB = { 1、 - 1、0、89、45、 - 90.1、3 } 4 I = 1。- サイクル 5 statrIndex = 1 。6 関数changeData(K) 。7 IF TB [K] <TB [K + 。1 ] 次に 8 TB [K]は、TBは[K +は。1〕TB [K +を= 1。]、TB [K] 9。 エンド 10 エンド 11 - 再帰関数バブリング 図12は、ある 関数の再帰(K) 13は IF K>#1 TB-I 、次いで- 交換が終了し、次のサイクルの実行。サイクルiを1だけインクリメントされ、交換インデックスkは1にリセットされ 14 、I = I + 1 15 = K 1 16 の終了 。17 changeData(K)- 交換機能素子 18が リターン I> =#1 TB または再帰(K + 1)- 再帰的な制御は、終了条件を追加します。私は#tbと再帰(K + < 1) この表現も可能であるが 19。 エンド 20である(statrIndex)再帰; - 呼び出す関数 21で 印刷が(table.concat(TB、" 、"、1、#Tb))- プリントキュー完了テーブル
出力:
TAG:ビットによる記録ビット、単純なものからは開始します。彼のような批判に、ポインティングようこそ。