問題描述
【專案1-有序陣列中插入資料(函式版)】
有乙個足夠「大」的陣列a,其中已經儲存了n個呈公升序排列的資料。呼叫函式insert(a, n, m),可以將數m插入到a中的合適位置,使其仍然保持公升序,並且返回值為陣列中有效數字的個數(即原先的n加1)。
例如,若a中資料為1 7 8 17 23 24 59 62 101,n=9,需要插入的數字m為50,呼叫函式insert(a, n, m)後,a中資料為1 7 8 17 23 24 50 59 62 101,n=10。
下面給出了呼叫函式insert的main函式,請寫出insert函式來,實現上述功能。
程式**1
#include #include #define n 100
int insert(int,int, int);
/**csdn學院--2016級
*目的:讓**見證成長(作為乙個初學的菜鳥,如
*檔名稱:myfun167.c
*完成日期:2023年10月7日
*/int main()
; int i, n=9;
int m =50;
n = insert(a, n, m); //在長度為n的a陣列中插入m,使仍保持有序
for(i=0; i=0&&(arr[i]>number))
arr[size--]=arr[i--];
arr[++i]=number;
return ++k;
}
程式**2
#include #include #define n 100
int insert(int,int,int);
int main()
; int i, n=9;
int m =50;
n = insert(a, n, m); //在長度為n的a陣列中插入m,使仍保持有序
for(i=0; i=0&&(arr[i]>n))
arr[++i]=m;
return ++n;
}
輸出結果
心得體會:
作為乙個大學二的菜鳥,開始慢慢前進,多多少少感到有收穫,由於水平有限,多多少少有錯,望包涵
重新上傳
取消
有序陣列中插入資料
問題描述 專案3 有序陣列中插入資料 定義好乙個有10個元素的陣列,先輸入9個呈公升序的數作為前9個元素,再輸入乙個數,要求按原來排序的規律將它插入陣列中。例如,9個呈公升序的數為1 7 8 17 23 24 59 62 101,需要插入的數字為50,輸出的序列則為1 7 8 17 23 24 50...
合併兩個有序數組成乙個有序陣列
題目 有兩個陣列a和b,將它們合併成陣列c,需要c也是有序陣列。有兩種實現思路 定義乙個新陣列,長度為兩個陣列長度之和,將兩個陣列都copy到新陣列,然後排序。給兩個陣列分別定義乙個下標,最大長度是陣列長度減一,按位迴圈比較兩個陣列,較小元素的放入新陣列,下標加一 注意,較大元素對應的下標不加一 直...
OJ 在有序陣列中插入資料
問題及 檔名稱 test.cpp 完成日期 2014年 12 月 04 日 版本號 v1.0 問題描述 定義好乙個有10個元素的陣列,先輸入9個呈公升序的數作為前9個元素,再輸入乙個數,要求按原來排序的規律將它插入陣列中。輸入描述 輸入前九個數,再輸入乙個需要插入的數 程式輸出 輸出排序後的新順序 ...