第十周作业补做(代码片段)

czzzz czzzz     2022-11-10     534

关键词:

20165326第十周课上测试补做

知识点简介

课上代码

1
2

ch15代码分析

ch15课后习题

(1)使用堆栈结构输出an的若干项,其中a_n=2a_n-1+2a_n=2a_(n-1)+2a_(n-2),a_1=3,a_2=8

import java.util.*;
public class E1 
    public static void main(String[] args) 
        Stack<Integer> stack = new Stack<Integer>();
        stack.push(new Integer(3));
        stack.push(new Integer(8));
        int k = 1;
        while(k<=10)
            for(int i=1;i<=2;i++)
                Integer F1 = stack.pop();
                int f1 = F1.intValue();
                Integer F2 = stack.pop();
                int f2 = F2.intValue();
                Integer temp = new Integer(2*f1+2*f2);
                System.out.println(""+temp.toString());
                stack.push(F2);
                k++;
            
        
    

(2)编写一个程序,将链表中的学生英语成绩单存放到一个树集中,使得按成绩自动排序,并输出排序结果.

import java.util.*;

class Student2 implements Comparable
    int english = 0;
    String name;
    Student2(int english,String name)
        this.name = name;
        this.english = english;
    
    @Override
    public int compareTo(Object b)
        Student2 st = (Student2)b;
        return (this.english-st.english);
    

public class E2 
    public static void main(String[] args) 
        List<Student2> list = new LinkedList<Student2>();
        int score[] = 98,100,99,96,95,94;
        String name [] = "Re","Or","Ye","Gr","Bl","Pu";
        for(int i=0;i<score.length;i++)
            list.add(new Student2(score[i],name[i]));
        
        Iterator<Student2> iter = list.iterator();
        TreeSet<Student2> mytree = new TreeSet<Student2>();
        while(iter.hasNext())
            Student2 stu = iter.next();
            mytree.add(stu);
        
        Iterator<Student2> te = mytree.iterator();
        while (te.hasNext())
            Student2 stu = te.next();
            System.out.println(""+stu.name+" "+stu.english);
        
    

运行结果技术分享图片

(3)有10个U盘,有两个重要属性:价格和容量。编写一个应用程序,使用TreeMap

import java.util.*;
class UDiscKey implements Comparable
    double key = 0;
    UDiscKey(double d)
        key = d;
    
    public int compareTo(Object b)
        UDiscKey disc = (UDiscKey)b;
        if((this.key-disc.key)==0)
            return -1;
        else
            return (int)((this.key-disc.key)*1000);
    

class UDisc
    int amount;
    double price;
    UDisc(int m,double e)
        amount = m;
        price = e;
    

public class E3 
    public static void main(String[] args) 
        TreeMap<UDiscKey,UDisc> treeMap = new TreeMap<UDiscKey,UDisc>();
        int amount[] = 1,2,3,4,8,16,32,64,128,10;
        double price[] = 10,20,30,40,70,60,70,100,90,80;
        UDisc UDisc[] = new UDisc[10];
        for(int i=0;i<UDisc.length;i++)
            UDisc[i]= new UDisc(amount[i],price[i]);
        
        System.out.println("按容量排序如下:");
        UDiscKey key[]= new UDiscKey[10];
        for(int i=0;i<key.length;i++)
            key[i] = new UDiscKey(UDisc[i].amount);
        
        for(int i=0;i<UDisc.length;i++)
            treeMap.put(key[i],UDisc[i]);
        
        int number = treeMap.size();
        Collection<UDisc> collection = treeMap.values();
        Iterator<UDisc> iter = collection.iterator();
        while(iter.hasNext())
            UDisc disc = iter.next();
            System.out.println(""+disc.amount+"G "+disc.price+"元");
        
        treeMap.clear();
        System.out.println("按价格排序如下:");
        for(int i=0;i<key.length;i++)
            key[i] = new UDiscKey(UDisc[i].price);
        
        for(int i=0;i<UDisc.length;i++)
            treeMap.put(key[i],UDisc[i]);
        
        number = treeMap.size();
        collection = treeMap.values();
        iter = collection.iterator();
        while (iter.hasNext())
            UDisc disc = iter.next();
            System.out.println(""+disc.amount+"G "+disc.price+"元");
        
    

运行结果
技术分享图片


20165201课下作业第十周(选做)

#20165201课下作业第十周(选做)相关知识点总结补做代码运行结果截图补做代码链接相关知识点的总结课上内容的补做,结果截图教材第十五章的代码分析补做教材第十五章的编程题目提交补做的博客作业的连接主动找老师进行... 查看详情

20165324第十周课下补做(代码片段)

20165324第十周课下补做未完成作业为:数据结构排序:在数据结构和算法中,排序是很重要的操作,要让一个类可以进行排序,有两种方法:有类的源代码,针对某一成员变量排序,让类实现Comparable接口,调用Collection.sort(List)没... 查看详情

第十周补做作业

第十周课下补做作业相关知识点的总结Comparable接口:如果链表中存放的对象不是字符串数据,那么创建对象的类必须实现Comparable接口,即实现该接口中的方法intcompareTo(Objectb)来规定对象的大小关系。也就是让待排序对象所在的... 查看详情

第十周课下作业(代码片段)

第十周课下作业(补做课堂测试)一、知识点总结1、单链表创建单链表链表中数据的插入list.add("**");链表中数据的排序Collections.sort();链表中数据的删除lsit.remove("");2、排序树集概念树映射TreeMap<K,V>**适合用于数据的排序**通... 查看详情

第十周课下补做(代码片段)

20165339第十周课上测试补做一.相关知识点创建链表:LinkedList<String>mylist=newLinkedList<String>();增加节点:list.add(Eobj)删除节点:list.remove(index)遍历链表:(迭代器)链表对象用iterator()方法获得一个Iterator对象。用get(intindex)... 查看详情

20165235第十周课下补做(代码片段)

20165235祁瑛第十周课下补做相关知识点的总结LinkedList<String>mylist=newLinkedList<String>()来创建一个链表。mylist.add();来添加结点。get(intindex)来获取链表中第index个位置的结点的对象。publicstaticsort(List<E>)将链表中... 查看详情

第十周课上测试补做(代码片段)

第十周课上测试补做一、相关知识点的总结1.++链表++:由若干个称作结点的==对象==组成的一种数据结构,每个结点含有一个数据和下一个结点的引用,或含有一个数据并含有上一个结点的引用和下一个结点的引用。2.创建链表:... 查看详情

201653082017-2018-2第十周课下补做(代码片段)

201653082017-2018-2第十周课下补做一、教材十五章代码分析代码分析有的是以注释的形式写出,对整个代码的理解是写在前面的1.p442-443Example15_1.javaCone.java此类不关心怎么样计算面积,计算面积由后面的类完成,只需调用即可,只关... 查看详情

20165206第十周课下补做(代码片段)

20165206第十周课下补做一、相关知识点泛型类声明:泛型类声明和创建对象时,类名后多了一对“<>”,而且必须要用具体的类型替换“<>”中的泛型。链表:由若干个称作结点的对象组成的一种数据结构,用于动态的减... 查看详情

20165322第十周课下补做(代码片段)

第十周课下补做课程知识点总结在数据结构和算法中,排序是很重要的操作,要让一个类可以进行排序,有两种方法:Comparable:“可比较的”,(欲参与比较的对象对应的元素类需实现Comparable接口)使用这种策略来比较时,两... 查看详情

第十周课下补做(代码片段)

排序与链表知识点Collections类提供的用于排序和查找的类的方法如下:publicstaticsort(List声明泛型类:class名称<泛型列表>链表的创建:LinkedList增加节点:list.add(Eobj);删除节点:list.remove(index)有类的源代码,针对某一成员变量... 查看详情

20165231第十周课下补做(代码片段)

相关知识点创建一个空的链表List<Student>list=newLinkedList<Student>();向链表中添加新的结点list.add(newStudent(XXXXXXXXXXXXXXX));删除结点list.remove("xxxxxxx");链表中数据的插入list.add("**");链表中数据的排序Collections.sort();将list中的 查看详情

第十周课堂测试补做(代码片段)

相关知识点总结泛型类声明:class名称<泛型列表>创建链表LinkedList<String>mylist=newLinkedList<String>();向链表增加节点list.add(Eobj);从链表中删除节点list.remove(index)LinkedListLinkedList链表对象可以使用iterator()方法获取一个Iterator... 查看详情

20165337岳源第十周课上补做(代码片段)

课上补做-2要求:针对下面的Student类,使用Comparator编程完成以下功能:在测试类StudentTest中新建学生列表,包括自己和学号前后各两名学生,共5名学生,给出运行结果(排序前,排序后)对这5名同学分别用学号和总成绩进行增序... 查看详情

20165306课下作业(第十周)(代码片段)

课下作业(第十周)相关知识点的总结链表链表是由若干个称作结点的对象组成的一种数据结构。单链表:每个结点含有一个数据和下一个结点的引用。双链表:每个结点含有一个数据并含有上一个结点的引用和下一个结点的引... 查看详情

20165332第十周课下作业(代码片段)

20165332第十周课下作业知识点总结创建一个空的链表List向链表中添加新的结点list.add(newStudent(XXXXXXXXXXXXXXX));删除结点list.remove("xxxxxxx");链表中数据的插入list.add("**");链表中数据的排序Collections.sort();将list中的元素按升序排序publicsta... 查看详情

2017-2018-220179215《网络攻防实践》第十周作业(代码片段)

2017-2018-220179215《网络攻防实践》第十周作业缓冲区溢出漏洞实践缓冲区溢出是指程序试图向缓冲区写入超出预分配固定长度数据的情况。这一漏洞可以被恶意用户利用来改变程序的流控制,甚至执行代码的任意片段。这一漏洞... 查看详情

第十周作业(代码片段)

缓冲区溢出漏洞实验实验声明本试验是按照实验楼的实验指导书完成的,完成过程中除了内存地址发生变化外,部分的文件名字也有所改变,所有实验截图均与本身实验指导书不同。一、实验简介缓冲区溢出是指程序试图向缓冲... 查看详情