一位陣列的應用 查詢

2021-05-24 01:50:13 字數 1355 閱讀 5446

1.  順序查詢

當被查詢的資料無序排列時,只能採用順序查詢法進行查詢。順序查詢演算法的思想是:對待查資料x一一與被查資料(陣列元素)進行比較,直到找到與待查資料相等的資料並返回陣列元素的下標;如果找不到,則返回-1.

例1:順序查詢

#include

main();

int num,i=0;

printf("please input a number:/n");

scanf("%d",&num);

while(a[i]!=num&&i<10),x,i;

int low=0,upper=n-1,mid,found;

printf("執行結果為:/n");

printf("陣列a[%d]:/n",n);

for(i=0;iprintf("%5d",a[i]);//輸出陣列中的元素值

printf("/n輸入查詢值:/n");

scanf("%d",&x);

if(x==a[low]) found=1;

else if(x==a[upper]) found=1;

else

while(low<=upper);

int i,insert,j=0,temp;

int a[n];

printf("請輸入%d個陣列:/n",n-1);

for(i=0;iscanf("%d",&a[i]);

printf("元陣列中的元素為:/n");

for(i=0;iprintf("%-5d",a[i]);

printf("/n");

for(i=0;ifor(j=i+1;jif(a[i]>a[j])

temp=a[i];

a[i]=a[j];

a[j]=temp;

printf("排序後的元陣列中的元素為:/n");

for(i=0;iprintf("%-5d",a[i]);

printf("/n請輸入乙個整數:/n");

scanf("%d",&insert);

while(jj++;

if(j==n-2) a[n-1]=insert;

else{

for(i=n-2;a[i]>insert;i--){//從後向前賦值

a[i+1]=a[i];

if(j==0)//判斷時候插入到首位置

a[0]=insert;

else

a[i+1]=insert;

printf("插入後的元素順序為:/n");

for(i=0;iprintf("%-5d",a[i]);

printf("/n");

一位陣列去除重複

一些同學在面試的時候會碰到一些小問題,這些問題雖小,卻能很好的顯示出來你以往工作情況和對待程式設計的狀態。下面舉乙個例子,關於 陣列去重 如果有同學面試的時候再碰到就可以順手而來了。如題 寫乙個方法去除陣列string a new string 中的重複元素。答 這裡所寫的方法用的 泛型 所以要先引...

js多維陣列變一位陣列

1 將多維陣列轉化成乙個一位陣列,例如 1,2,3 4,5,6,7 轉化成 1,2,3,4,5,6,7 答案在下面,主要就是利用遞迴 function test array else return newarray 2 求陣列的最大維數,即一共巢狀了多少層,例如 1,2,3,4,5,6 7,8 一共...

整數和一位陣列的轉化

平時,總會碰見解析 操作暫存器 flash eeprom中的值,一些反反覆覆的轉化。總結了兩個小函式,很簡單,乙個移位操作而已。1 整數值按高位在前,轉換為n位元組陣列 def int arry integer,n my arry for i in range n,0,1 my arry integ...