C語言將陣列元素全體移動k次

2021-10-01 07:30:53 字數 706 閱讀 3573

#include

#include

#include

void reverse(int a,int k,int n);

void leftmove(int a,int k,int n);

int main()

printf("請問要左移動幾次?\n");  

scanf("%d", &k);

/*方法一的思路:

假設陣列長度為n=6,位移k=3,a= ;

1,巢狀迴圈的內迴圈是陣列整體左移動乙個。 

2,外迴圈控制全部元素左移動個數 。 

*/    

leftmove(arr,k,n);  

/*方法二的思路:

假設陣列長度為n=6,位移k=3,a= ; 

1,先逆置陣列前k個元素;    

reverse(arr,0,k-1);

2,再逆置陣列後n-k個 元素 ;

reverse(arr,k,n-1);

3,最後逆置整個陣列

reverse(arr,0,n-1);

*/printf("左移動%d次後的陣列為:\n",k);

for(i=0;i}return 0;

}void reverse(int a,int start,int end)

}void leftmove(int a,int k,int n)

}

C語言學習 將陣列元素進行氣泡排序

在實際開發中,有很多場景需要我們將陣列元素按照從大到小 或者從小到大 的順序排列,這樣在查閱資料時會更加直觀,例如 乙個儲存了商品單價的陣列,排序後更容易看出它們的價效比。對陣列元素進行排序的方法有很多種,比如氣泡排序 歸併排序 選擇排序 插入排序 快速排序等,其中最經典最需要掌握的是 氣泡排序 以...

將陣列中指定數量的元素移動陣列後面

static void main movenumberarraytoend array,3 static void movenumberarraytoend ilistarraylist,int num var query from number in arraylist orderby numbe...

c語言 查詢陣列元素

題目描述 輸入n個整數構成乙個陣列,在這個陣列中查詢x是否存在,如果存在,刪除x,並輸出刪除元素後的陣列。如果不存在,輸出 not found 定義乙個查詢函式find 在陣列a中查詢x,若找不到函式返回 1,若找到返回x的下標,函式原型如下 int find int a,int n,int x 然...