알고리즘 아이디어:
처음부터 탐색하여 요소보다 큰 첫 번째 숫자를 찾은 다음 숫자를 삽입하면 후속 요소가 순서대로 이동됩니다.
예제 코드:
#include<stdio.h>//直接插入排序 void insert_array(int *a,int length,int element)//插入函数 往有序的数组a里插入值为element的元素使数组a依然有序 { int i,j,t,f; for(i=0;i<length;i++) { if(a[i]>element) { t=i;//找到位置以后 可以依次移动数组元素腾出位置了 for(j=length;j>=t;j--) { if(j==t) a[j]=element; else a[j]=a[j-1];//数组依次往后移动 不管正序还是倒序都可以 } f=1; break; } } if(f!=1)//当element大于所有数组元素时候 { a[length]=element; } for(i=0;i<length+1;i++) { printf("%d ",a[i]); } } int main() { int a[5]={1,2,3,5,6}; int e=7; insert_array(a,5,e); }
추천 튜토리얼: c 언어 튜토리얼
위 내용은 C 언어는 순서가 지정된 배열에 숫자를 삽입하고 순서대로 유지하는 기능을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!