3 Star 60 Fork 5

programmercarl / kamacoder-solutions

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
0050.随机数排序.md 1.53 KB
一键复制 编辑 原始数据 按行查看 历史

50. 随机数排序

题目链接

C++

// 因为随机数的数字范围是1-500
// 所以可以采取桶排序
// 读取所有数据,如果某个数出现了,就赋值为1
// 最后遍历数组,将值为1,即出现过的数字按顺序输出
#include <bits/stdc++.h>
using namespace std;
   
int n;

void solve() {
    int N = 501;
    vector<int> bucket(N, 0); // 储存出现过的数字,0代表未出现,1代表出现
    // 读入数据并将出现的数字标记为1
    while(n--) {
        int tmp;
        cin >> tmp;
        bucket[tmp] = 1;
    }
    // 按顺序输出出现过的数字
    for(int i = 0; i < N; ++i) {
        if(bucket[i]) {
            cout << i << " ";
        }
    }
    cout << endl;
}
 
 
int main() {
    while(cin >> n) {
        solve();
    }
    return 0;
}

Java

/**
 * 使用 Java 集合特性
*/
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        Set<Integer> uniqueNumbers = new TreeSet<>();// TreeSet能够自动去重 + 自动排序
        for (int i = 0; i < n; i++) {
            int num = scanner.nextInt();
            uniqueNumbers.add(num);
        }
        for (int num : uniqueNumbers) {
            System.out.printf("%d ", num);
        }
        System.out.println();
    }
}

Python

_ = input()
print(' '.join(map(str, sorted(set(map(int,input().split()))))))

Go

JS

C

1
https://gitee.com/programmercarl/kamacoder-solutions.git
git@gitee.com:programmercarl/kamacoder-solutions.git
programmercarl
kamacoder-solutions
kamacoder-solutions
main

搜索帮助