首页 > 其他分享 >练习——集合排序

练习——集合排序

时间:2023-04-04 17:01:19浏览次数:39  
标签:String price 练习 list Book 集合 排序 public auther

package com.collection_.list_;

public class Book {
    private String name;
    private String auther;
    private double price;

    public Book(String name, String auther, double price) {
        this.name = name;
        this.auther = auther;
        this.price = price;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAuther() {
        return auther;
    }

    public void setAuther(String auther) {
        this.auther = auther;
    }

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    @Override
    public String toString() {
        return "名称:" + name + "\t" + "价格:" + price + "\t" + "作者:" + auther + "\n";
    }
}

package com.collection_.list_;

import java.util.ArrayList;
import java.util.List;

public class ListExercise {
    @SuppressWarnings("all")
    public static void main(String[] args) {

        List list = new ArrayList();
        //List list = new Vector();
        //List list = new LinkedList();
        list.add(new Book("红楼梦","曹雪芹",100));
        list.add(new Book("西游记","吴承恩",10));
        list.add(new Book("水浒传","施耐庵",9));
        list.add(new Book("三国","罗贯中",80));
        list.add(new Book("西游记","吴承恩",90));

        //遍历
        for (Object o :list) {
            System.out.println(o);
        }

        //冒泡排序
        System.out.println("===排序后结果===");
        sort(list);

        for (Object o : list) {
            System.out.println(o);
        }

    }

    //价格要求从小到大
    public static void sort(List list){

        int listsize = list.size();
        for (int i = 0; i < listsize-1; i++) {
            for (int j = 0; j < listsize-1-i; j++) {
                //取出对象Book
                    Book book1 = (Book) list.get(j);
                    Book book2 = (Book) list.get(j+1);
                    if (book1.getPrice() > book2.getPrice()){   //交换
                        list.set(j,book2);
                        list.set(j+1,book1);
                    }
            }
        }
    }
}

标签:String,price,练习,list,Book,集合,排序,public,auther
From: https://www.cnblogs.com/Q1u-ovo/p/17287016.html

相关文章

  • js实现拖拽功能(拖拽排序)
    <template><transition-groupclass="container"name="sort"><divclass="drag-item"v-for="(v,i)indragArray":key="i":draggable="true"@dragstart="dr......
  • 算法训练——剑指offer(排序算法)摘要
    摘要一、排序算法原理与解题方法二、排序算法练习题目2.1数组中重复的数字数组中重复的数字_牛客题霸_牛客网package排序算法;importjava.util.ArrayList;/***@ClassnameJZ3数组中重复的数字*@DescriptionTODO*@Date2022/2/49:20*@Createdbyxjl*/publi......
  • 算法从入门到精通:选择排序
    一、排序和算法排序是算法中的一部分,也叫排序算法。算法一般用来处理数据,而数据的处理最好是要找到他们的规律,这个规律中有很大一部分就是要进行排序,所以需要有排序算法。本节讲解的是选择排序,从选择排序开始认识排序的一些基础概念。之所以将选择排序作为排序的入门,原因是选择排......
  • 链表练习3
    已知整型链表,设计算法,在所有结点值为x的结点前插入结点值为y的结点,插入的结点个数通过函数值返回。#include<stdio.h>#include<stdlib.h>typedefstructnode{//用Node代替structnodeinta;structnode*next;}Node,*LinkList;LinkListcreate();Link......
  • 快速排序
    快速排序题目描述本题为代码补全填空题,请将题目中给出的源代码补全,并复制到右侧代码框中,选择对应的编译语言(C/Java)后进行提交。若题目中给出的源代码语言不唯一,则只需选择其一进行补全提交即可。复制后需将源代码中填空部分的下划线删掉,填上你的答案。提交后若未能通过,除考虑填......
  • 【LeetCode排序专题02】最小k个数,关于快速排序的讨论
    最小k个数输入整数数组arr,找出其中最小的k个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。示例1:输入:arr=[3,2,1],k=2输出:[1,2]或者[2,1]示例2:输入:arr=[0,1,2,1],k=1输出:[0]限制:0<=k<=arr.length<=100000<=arr[i......
  • List集合之元素和对象去重
    目录1List元素去重1.1移除List中指定某一元素1.1.1For循环移除1.1.1.1For移除不彻底问题1.1.1.2用i--解决问题1.1.1.3倒序遍历移除元素1.1.2ForEach移除1.1.2.1ConcurrentModificationException异常1.1.2.2iterator遍历1.2移除List中重复元素1.2.1ForEach添加去重1.2......
  • 51nod 1551 集合交易
    1551 集合交易题目来源: CodeForces基准时间限制:1 秒空间限制:131072 KB分值: 320 难度:7级算法题 收藏 关注市场中有n个集合在卖。我们想买到满足以下要求的一些集合,所买到集合的个数要等于所有买到的集合合并后的元素的个数......
  • 数据解构之插入排序
    一、插入排序常见三种的排序交换、选择、插入。什么是插入排序?每一趟都要把待排序数放到有序区中合适的位置插入。我们以前是把数,把一个待排序数放到有序区的某一端,这是以前的排序方法。     现在不是了,现在是把待排序数放到有序区当中的合适的位置插入,要注意插入位置的确定......
  • 【初赛】各种排序算法总结
    一、算法评价排序方法平均时间最好时间最坏时间冒泡排序(稳定)O(n^2)O(n)O(n^2)选择排序(不稳定)O(n^2)O(n^2)O(n^2)插入排序(稳定)O(n^2)O(n)O(n^2)快速排序(不稳定)O(nlogn)O(nlogn)O(n^2)归并排序(稳定)O(nlogn)O(nlogn)O(nlogn)堆排序(不稳定)O(nlogn)O(nlogn)O(nlogn)基数排序......