算法
文章平均质量分 52
Ecloss
知行合一,凡事皆在事上练
展开
-
数据结构 ---- 最大子列和
01-复杂度1 最大子列和问题(20 分) 给定K个整数组成的序列{ N 1 , N 2 , …, N K },“连续子列”被定义为{ N i , N i+1 , …, N j },其中 1≤i≤j≤K。“最大子列和”则被定义为所有连续子列元素的和中最大者。例如给定序列{ -2, 11, -4, 13, -5, -2 },原创 2017-10-18 15:59:11 · 389 阅读 · 0 评论 -
Java基础逐步击破----菱形
**菱形**要求: 创建一个菱形, 1.输入只能是奇数行,如果输入偶数行,报错,并问是否重新输入 2.输入奇数行,打印其奇数行,打印成功后,询问是否继续打印 这里写代码片 public static void main(String[] args) { Scanner in = new Scann原创 2017-10-11 10:19:25 · 447 阅读 · 0 评论 -
Java基础之逐步击破----九九乘法表
要求:用循环打印一个九九乘法表分析: 打印该乘法表要打印(1+2+3+…+9) = 45次,如果一一打印必然非常麻烦 所以用循环来做,此时for循环是最适合这道题的//核心代码public static void main(String[] args){ int num = 0; //用来接收乘法的值 for(int i = 1; i <= 9原创 2017-10-13 00:41:20 · 567 阅读 · 0 评论 -
冒泡算法----Java
冒泡排序法的原理是,每次比较相邻的两个元素,如果它们的顺序错误就把它们交换过来。例如对4 3 6 2 7 1 5这7个数字进行从小到大的排序,从最左侧开始,首先比较4和3因为是从小到大排序,4和3的顺序显然是错误的,交换他们,得到接下来比较4和6顺序是正确的,不需要任何操作。接下来进行下一步,比较6和26显然应该排在2的后面,怎么办?交换它们,得到经过前面几步,已经可以总结出规律,那么接下来要做的比转载 2017-10-16 17:07:16 · 213 阅读 · 0 评论 -
Java程序语言进阶 ---- 第一周编程题
**题目内容:** 设计一个表示分数的类Fraction。这个类用两个int类型的变量分别表示分子和分母。 这个类的构造函数是: Fraction(int a, int b) 构造一个a/b的分数。 这个类要提供以下的功能: double toDouble(); 将分数转换为double Fraction plus(Fraction r); 将自己的分数和r原创 2017-10-16 17:10:25 · 673 阅读 · 0 评论 -
Java语言进阶笔记 ----第一周 类和对象
**对象变量是对象的管理子和而非所有者**理解: 类定义了对象长什么样?对象是按照类的定义所制造出来的实体,一个类可以创建很多对象,每个对象有自己的数据。对象与类:* 对象是实体,需要被创建,可以为我们做事情* 类是规范,根据类的定义来创建对象* 对象(这只猫) * 表达东西或事件 * 运行时响应消息(提供服务)* 类(猫) * 定义所有猫的属性 * 就是原创 2017-10-16 17:17:56 · 369 阅读 · 0 评论 -
程序设计入门 —— Java入门
1奇偶个数(5分) 题目内容: 你的程序要读入一系列正整数数据,输入-1表示输入结束,-1本身不是输入的数据。程序输出读到的数据中的奇数和偶数的个数。输入格式: 一系列正整数,整数的范围是(0,100000)。如果输入-1则表示输入结束。输出格式: 两个整数,第一个整数表示读入数据中的奇数的个数,第二个整数表示读入数据中的偶数的个数。两个整数之间以空格分隔。输入样例: 9 3 4 2 5原创 2017-10-17 23:37:42 · 762 阅读 · 0 评论 -
程序设计入门——Java作业
1时间换算(5分) 题目内容: UTC是世界协调时,BJT是北京时间,UTC时间相当于BJT减去8。现在,你的程序要读入一个整数,表示BJT的时和分。整数的个位和十位表示分,百位和千位表示小时。如果小时小于10,则没有千位部分;如果小时是0,则没有百位部分;如果分小于10分,需要保留十位上的0。如1124表示11点24分,而905表示9点5分,36表示0点36分,7表示0点7分。 有效的输入范原创 2017-10-17 23:43:18 · 241 阅读 · 0 评论 -
程序设计入门——Java入门作业(第三周)
2数字特征值(5分) 题目内容: 对数字求特征值是常用的编码算法,奇偶特征是一种简单的特征值。对于一个整数,从个位开始对每一位数字编号,个位是1号,十位是2号,以此类推。这个整数在第n位上的数字记作x,如果x和n的奇偶性相同,则记下一个1,否则记下一个0。按照整数的顺序把对应位的表示奇偶性的0和1都记录下来,就形成了一个二进制数字。比如,对于342315,这个二进制数字就是001101。这里的计原创 2017-10-18 00:01:39 · 308 阅读 · 0 评论 -
队列---顺序队列存储结构的不足(假溢出)
我们假设一个队列有n个元素,则顺序存储的队列需建立一个大于n的数组,并把队列的所有元素存储在数组的前n个单元,数组下标为0的一端即是队头。所谓的入队列操作,其实就是在队尾追加一个元素,不需要移动任何元素,因此时间复杂度为0(1)。可有时想想,为什么出队列时一定要全部移动呢,如果不去限制队列的元素必须存储在数组的前n个单元这一条件,出队的性能就会大大增加。也就是说,队头不需要一定在下标为0的位置...转载 2019-08-01 14:58:22 · 2195 阅读 · 0 评论