Auto commit

This commit is contained in:
smallkun 2025-03-28 08:32:24 +08:00
parent c4547a80fc
commit 5f169e30ac

@ -260,6 +260,86 @@ int main(){
1 2 5 4 8
```
**会改变其他元素位置**
```c
#include <stdio.h>
int main(){
int n, max, min, t;
scanf("%d", &n);
int a[n];
max = min = 0;
for(int i=0;i<n;i++){
scanf("%d", &a[i]);
if(a[max] < a[i]){
max = i;
}
if(a[min] > a[i]){
min = i;
}
}
t = a[min];
a[min] = a[0];
a[0] = t;
if(max == 0){
max = min;
}
t = a[max];
a[max] = a[n-1];
a[n-1] = t;
for(int i=0;i<n;i++){
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
**不会改变其他元素位置**
```c
#include <stdio.h>
int main(){
int n, max, min, t;
scanf("%d", &n);
int a[n];
max = min = 0;
for(int i=0;i<n;i++){
scanf("%d", &a[i]);
if(a[max] < a[i]){
max = i;
}
if(a[min] > a[i]){
min = i;
}
}
for(int i=max;i<n-1;i++){
t = a[i];
a[i] = a[i+1];
a[i+1] = t;
}
if(max < min){
min--;
}
for(int i=min;i>=1;i--){
t = a[i];
a[i] = a[i-1];
a[i-1] = t;
}
for(int i=0;i<n;i++){
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
### 7 数组排序
@ -275,6 +355,38 @@ int main(){
输出样例2 3 5 10
```
```c
#include <stdio.h>
int main(){
int a[10];
int n;
scanf("%d", &n);
for(int i=0;i<n;i++){
scanf("%d", &a[i]);
}
for(int i=0;i<n-1;i++){
for(int j=0;j<n-1-i;j++){
if(a[j] > a[j+1]){
int t = a[j];
a[j] = a[j+1];
a[j+1] = t;
}
}
}
for(int i=0;i<n;i++){
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
### 8 谁频次最高
@ -291,6 +403,39 @@ int main(){
输出样例3 4
```
```c
#include <stdio.h>
int main(){
int n, max_count=0, max_num, t;
scanf("%d", &n);
int a[n];
for(int i=0;i<n;i++){
scanf("%d", &a[i]);
}
for(int i=0;i<n-1;i++){
t = 0;
for(int j=i+1;j<n;j++){
if(a[i] == a[j]){
t++;
}
}
if(t > max_count){
max_count = t;
max_num = a[i];
}
}
printf("%d %d\n", max_num, max_count+1);
return 0;
}
```
### 9 矩阵运算