用遞迴演算法判斷乙個陣列是否遞增

2021-07-13 21:24:13 字數 481 閱讀 2748

本題要求使用遞迴演算法,設陣列為array,則遞迴陣列滿足以下條件。

(1)如果陣列長度為1,則該陣列為遞增,返回true。

(2)如果陣列長度為n(n >= 2),則先比較最後兩個元素是否遞增,如果最後兩個元素遞增,則再遞迴比較除去最後乙個元素的前 n-1 個元素是否遞增。

具體實現如下:

#include 

bool isincrease(int arr,int len)

int main(int argc, const

char * argv) ;

int len = sizeof(arr)/sizeof(int);

if (isincrease(arr, len))

printf("arr是遞增陣列\n");

else

printf("arr不是遞增陣列\n");

return

0;}

用遞迴判斷陣列是否遞增

參考 注意 該方法巧妙的利用了,陣列的長度。遞迴傳參時縮小陣列的長度即改變了下標 include void judge int a,int n if n 1 if a n 1 a n 2 int main int len sizeof a sizeof a 0 judge a,len return0...

遞迴實現判斷陣列是否遞增

用遞迴實現判斷陣列是否遞增 如果陣列長度為1,則陣列為遞增,返回true.如果陣列長度為n,則先比較最後兩個元素是否遞增,如果最後兩個元素遞增,則再遞迴比較去掉最後乙個元素的最後兩個元素,如下 include bool isincrease int a,int n int main printf d...

判斷乙個陣列是否有序

一般來說,判斷乙個陣列或序列是正序,倒序還是亂序,需要我們將這個陣列完整的遍歷一遍後才能得出答案,它不像折半查詢那樣只處理少量的資料便能得出結論,因為一段包含成千上萬個元素的有序序列,哪怕將其中兩個元素的位置調換都能將這個序列變成亂序序列.如下面這段序列,只是數字8和9調換,就變成了亂序的.0,1,...