第十周作业补做

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+"元");
        }
    }
}

运行结果

原文地址:https://www.cnblogs.com/Czzzz/p/9000205.html

时间: 2024-12-13 09:36:53

第十周作业补做的相关文章

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

#20165201 课下作业第十周(选做) 相关知识点总结 补做代码运行结果截图 补做代码链接 相关知识点的总结 课上内容的补做,结果截图 教材第十五章的代码分析 补做教材第十五章的编程题目 提交补做的博客作业的连接 主动找老师进行作业答辩 原文地址:https://www.cnblogs.com/cbmwtsl/p/9000384.html

软件工程_东师站_第十周作业

一.PSP Data Type Job start Int End Total 20160510 助教 团队作业二 20:00 5 21:00 55 20160511 助教 团队作业二.三 18:45 16 20:45 104 20160512 耐撕 站立会议 18:15   18:35 20 二.进度条   代码行数 博客字数 知识点 第一周 400 430 见我博客软件工程——师大站1 第二周 0 5200 见我博客软件工程_东师站_课堂笔记 第三周 0 63 站立会议.单元测试 第四周 1

第十周(补)

最近这段时间对自己的学习状态很不满意,上课一直开小差,只好利用课余的时间去和学霸请教了. 周次 学习时间 新编写代码行数 博客量(篇) 学到知识点 第十周 5 120 1 HTML                                                  

20165212任胤第四周课上作业补做

20165212任胤 第四周课上测试补做 题目:jdb调试递归循环程序 程序代码: import java.util.Arrays; public class B { public static void main(String [] args) { if(args.length < 1){ System.out.println("Usage: java CLSumRecursion num1 num2 ..."); System.exit(0); } int m = Integ

网络攻防实践 第十周作业

网络攻防实践作业 html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,tabl

20169217 《Linux内核原理与分析》 第十周作业

实验内容 理解Linux系统中进程调度的时机,可以在内核代码中搜索schedule()函数,看都是哪里调用了schedule(),判断我们课程内容中的总结是否准确: 使用gdb跟踪分析一个schedule()函数 ,验证您对Linux系统进程调度与进程切换过程的理解: 特别关注并仔细分析switch_to中的汇编代码,理解进程上下文的切换机制,以及与中断上下文切换的关系: Linux系统进程调度与进程切换过程 进程调度分为三种类型: 中断处理过程(包括时钟中断.I/O 中断.系统调用和异常)中,

2017-2018-2 20179207 《网络攻防技术》第十周作业

缓冲区溢出攻防研究 Linux 缓冲区溢出 原理 缓冲区溢出是指程序试图向缓冲区写入超出预分配固定长度数据的情况.这一漏洞可以被恶意用户利用来改变程序的流控制,甚至执行代码的任意片段.这一漏洞的出现是由于数据缓冲器和返回地址的暂时关闭,溢出会引起返回地址被重写. 实践(实验楼环境下) 系统用户名shiyanlou 实验楼提供的是64位Ubuntu linux,而本次实验为了方便观察汇编语句,我们需要在32位环境下作操作,因此实验之前需要做一些准备. 1.输入命令安装一些用于编译32位C程序的东西

《网络攻防》第十周作业

缓冲区溢出 实验简介 缓冲区溢出是指程序试图向缓冲区写入超出预分配固定长度数据的情况.这一漏洞可以被恶意用户利用来改变程序的流控制,甚至执行代码的任意片段.这一漏洞的出现是由于数据缓冲器和返回地址的暂时关闭,溢出会引起返回地址被重写. 实验准备 系统用户名shiyanlou 实验楼提供的是64位Ubuntu linux,而本次实验为了方便观察汇编语句,我们需要在32位环境下作操作,因此实验之前需要做一些准备. 输入命令安装一些用于编译32位C程序的东西: sudo apt-get update

第十周作业

本周作业内容: 系统的INPUT和OUTPUT默认策略为DROP,请完成以下关于iptables的题目: 1.限制本地主机的web服务器在周一不允许访问:新请求的速率不能超过100个每秒:web服务器包含了admin字符串的页面不允许访问:web服务器仅允许响应报文离开本机: 2.在工作时间,即周一到周五的8:30-18:00,开放本机的ftp服务给172.16.0.0网络中的主机访问:数据下载请求的次数每分钟不得超过5个: 3.开放本机的ssh服务给172.16.x.1-172.16.x.10