其他分享
首页 > 其他分享> > LeetCode刷题11-数组去重和排序

LeetCode刷题11-数组去重和排序

作者:互联网

package com.example.demo.leetcode.case202208;

import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;
import java.util.stream.Collectors;

/**
 * 功能描述
 *
 * @author ASUS
 * @version 1.0
 * @Date 2022/8/6
 */
public class Main2022080606 {

    /*
    输入有2行,第1行为一个正整数,表示需要输入n个数。(n<=100且输入的数不大于1000)。第2行有n个用空格隔开的正整数。
    输出也是两行,第1行为一个正整数j,表示去重后剩余有j个数。第2行为j个用空格隔开的正整数,为上述输入数去重后从小到大已排好序的这样一个序列。
    输入
    10
    20 40 32 67 40 20 89 300 400 15
    输出
    8
    15 20 32 40 67 89 300 400
    */
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        // 获取输入信息
        String total = scanner.nextLine();
        String str = scanner.nextLine();

        // 去重后元素总数
        System.out.println(Arrays.asList(str.split(" "))
                .stream()
                .distinct()
                .collect(Collectors.toList()).size());

        // 排序后数据
        System.out.println(Arrays.asList(str.split(" "))
                .stream()
                .distinct()
                .sorted(Comparator.comparingInt(Integer::parseInt))
                .collect(Collectors.joining(" ")));

    }

}

 

标签:11,java,stream,util,import,1.0,LeetCode,输入,刷题
来源: https://www.cnblogs.com/chch213/p/16557643.html