搜索
热搜: NOIP OIer 神牛
查看: 294|回复: 0

普及 排序

[复制链接]

主题

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2022-11-12 10:52:45 | 显示全部楼层 |阅读模式
/*
解决问题的方法
3 1 4 5 2
1 3 4 5 2
1 3 4 5 2
1 3 2 4 5
1 2 3 4 5
1 2 3 4 5
5个数 4趟
n个数(n-1)趟
for->n-1次
#include<bits/stdc++.h>
#include<stdio.h>
using namespace std;
int main(){
        int arr[10]={3,2,4,1,5,6,7,9,8,0};
        int n=sizeof(arr)/sizeof(int); //数组的长度=元素的长度*元素的个数
        for(int i=0;i<n-1;i++){
                bool flag=true;//每一趟开始,假设数组是有序的
                for(int j=0;j<n-1-i;j++){
                        if(arr[j]>arr[j+1]){//比较 0到n-1 j+1<=n-1 j<=n-2 j<n-1
                         //交换
                         swap(arr[j],arr[j+1]);
                         flag=false;
                         swap or 下面
                         int tmp;
                         tmp=arr[j];
                         arr[j]=arr[j+1];
                         arr[j+1]=tmp;
                         
                }
        }
        if(flag==true){
                break;
        }
}
        for(int i=0;i<n;i++){
                cout<<arr[i]<<' ';
        }
        return 0;
}
*/
/*
1468 命名的随机数
#include<bits/stdc++.h>
#include<stdio.h>
using namespace std;
int arr[105];
int ans[105];
int main(){
        int n;
        cin>>n;
        for(int i=0;i<n;i++){
                cin>>arr[i];
        }
                for(int i=0;i<n-1;i++){
                bool flag=true;//每一趟开始,假设数组是有序的
                for(int j=0;j<n-1-i;j++){
                        if(arr[j]>arr[j+1]){//比较 0到n-1 j+1<=n-1 j<=n-2 j<n-1
                         //交换
                         swap(arr[j],arr[j+1]);
                         flag=false;
                }
        }
        if(flag==true){
                break;
                }
        }
        int num=0;
        ans[++num]=arr[0];//ans[1]=ans[0]
        for(int i=1;i<n;i++){
                if(arr[i]!=ans[num]){
                        ans[++num]=arr[i];
                }
        }
        cout<<num<<endl;
        for(int i=1;i<=num;i++){
                cout<<ans[i]<<' ';
        }
        return 0;
}
*/

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

津ICP备19006949号-1 | 津公网安备12010102000465号

快速回复 返回顶部 返回列表