
Java与面向对象编程
Caleb_Sung
90后辣鸡coder一枚
展开
-
Java:冒泡法排列数组(第三周)
题目来源:大工慕课 链接 作者:Caleb Sung题目要求写一个Java程序,从控制台读取10个整数数据到一个数组中。排序数组并打印出结果。冒泡法简介所谓排序法,就是对一组无序的序列进行有序的排序(从大到小或者从小到大),那么什么叫冒泡排序法,冒泡排序法又是怎么实现数组的有序排列呢? 冒泡排序法的具体实现方法是这样的,从数组的第一个元素arr[0]开始,两两...原创 2018-04-03 23:25:22 · 294 阅读 · 0 评论 -
Java数据结构:归并排序/Merge sort(第三周)
题目来源:大工慕课 链接 作者:Caleb Sung基本思想归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策略(分治法将问题分(divide)成一些小的问题然后递归求解,而治(conquer)的阶段则将分的阶段得到的各答案”修补”在一起,即分而治之)。 可以看到这种结构很像一棵完全二叉树,本文的归并排...原创 2018-08-25 11:06:52 · 289 阅读 · 0 评论 -
Java数据结构:利用递归算法在一条语句内实现计算n的阶乘(第三周)
题目来源:大工慕课 链接 作者:Caleb Sung题目要求利用递归算法在一条语句内实现计算n的阶乘。参考代码在涉及Scanner的语句中,若不输入import编译器将会报错。Eclipse中可以点击语句前的灯泡选择相应语句进行自动补全,IDEA则把光标移动到红色波浪线的部分上按Alt+Enter键由编译器自动补全。import java.util.Scanner;...原创 2018-08-24 20:40:07 · 383 阅读 · 0 评论 -
Java数据结构:利用Sentinel实现链接列表/LinkedList,并用搜索、插入与删除来测试它(第九周)
题目来源:大工慕课 链接 作者:Caleb Sung链接列表/链表数据的存储一般分线性存储结构和链式存储结构两种。前者是一种顺序的存储方式,在内存中用一块连续的内存空间存储数据,即逻辑上相连的物理位置相邻,比较常见的就是数组;后者是一种链式存储方式,不保证顺序性,逻辑上相邻的元素之间用指针所指定,它不是用一块连续的内存存储,逻辑上相连的物理位置不一定相邻。 链表是一种递归的数据结构,它...原创 2018-08-31 20:40:46 · 819 阅读 · 0 评论 -
Java数据结构:利用递归算法在一条语句内实现查找数组中的最小元素(第三周)
题目来源:大工慕课 链接 作者:Caleb Sung题目要求利用递归算法来查找数组中的最小元素。参考解答查找函数 MinInArray()利用了两重三目运算,使得查找功能巧妙地被归纳为只有一条语句:int MinInArray (int[] array , int n) { return n == 1 ? array[0] : array[n-1]...原创 2018-08-24 19:59:11 · 485 阅读 · 0 评论 -
Java:实现一个能够改变显示单词的字体风格和大小的GUI【V2】(第十四周)
题目来源:大工慕课 链接 作者:Caleb Sung题目要求Implement a GUI as shown in the following figure: Input Menu: Edit Menu: Tool Bar: 参考解答import java.awt.BorderLayout;import java.awt.Color;...原创 2018-08-24 19:12:10 · 1815 阅读 · 2 评论 -
Java数据结构:堆栈与队列/Stack & Queue(第八周)
题目来源:大工慕课 链接 作者:Caleb Sung关于Stackstack 是堆栈容器, 是一种“先进后出” 的容器。stack 是简单地装饰 deque 容器而成为另外的一种容器。Stack的Java实现public class Homework_ds7 { public static void main(String[] args) { ...原创 2018-08-31 19:57:28 · 374 阅读 · 0 评论 -
Java数据结构:计数排序/Counting Sort(第七周)
题目来源:大工慕课 链接 作者:Caleb Sung关于计数排序计数排序是一种非常快捷的稳定性强的排序方法,时间复杂度O(n+k),其中n为要排序的数的个数,k为要排序的数的组大值。计数排序对一定量的整数排序时候的速度非常快,一般快于其他排序算法。但计数排序局限性比较大,只限于对整数进行排序。计数排序是消耗空间发杂度来获取快捷的排序方法,其空间发展度为O(K),同理K为要排序的最大值...原创 2018-08-31 19:44:14 · 292 阅读 · 0 评论 -
Java:实现一个能够改变显示单词的字体风格和大小的GUI(第十三周)
题目来源:大工慕课 链接 作者:Caleb Sung题目要求实现一个能够改变显示单词的字体风格和大小的GUI。参考代码import java.awt.BorderLayout;import java.awt.Font;import javax.swing.ButtonGroup;import javax.swing.JCheckBox;import javax....原创 2018-08-23 21:41:18 · 960 阅读 · 0 评论 -
Java:利用GUI实现一个计算器【简易/完整版本】(第十二周)
题目来源:大工慕课 链接 作者:Caleb Sung题目要求利用GUI实现一个计算器。点击一个按钮时,显示屏应该显示相应的数字。 下图为设计样板: (MacOS真是随便写个Frame都可以这么好看呀……)注1:本部分结束后,还将贴出教授写的简易版本。这个版本涉及计算的逻辑较为简单,但不能完整正常实现正常计算器的全部功能。此外本文还附有核心Java这本书的随书参考代码,...原创 2018-08-23 16:00:02 · 21231 阅读 · 2 评论 -
Java:初识GUI:居中显示一个窗口,并指定格式的文字和形状(第十一周)
题目来源:大工慕课 链接 作者:Caleb Sung题目要求实施一个窗口来显示你的名字,你的ID和你的专业。 窗口应该位于屏幕的中心。参考代码窗口类:HelloGUIFrameclass HelloGUIFrame extends JFrame{ public HelloGUIFrame() { setTitle("Hello GUI");...原创 2018-08-23 15:03:02 · 2531 阅读 · 0 评论 -
Java:实现子类与父类的继承以及各自类的方法,且运用Comparator进行多排序输出(第十周)
题目来源:大工慕课 链接 作者:Caleb Sung题目要求注:本题基于上周的题目进行方法升级操作,并删除了一个子类。 查看上周题目请移步文章:Java:实现多子类与父类的继承,并实现各自类的方法(第九周)实现此UML类图中所示的三个类: 1. 运动员的getDescription()方法应该返回一个字符串,例如“An Athlete XXXName with heig...原创 2018-08-23 11:32:55 · 963 阅读 · 0 评论 -
Java:实现多子类与父类的继承,并实现各自类的方法(第九周)
题目来源:大工慕课 链接 作者:Caleb Sung题目要求阅读幻灯片中关于Person,Employee和Manager的源代码;实现UML类图中所示的三个类: Athlete的getDescription()方法应该返回一个字符串,例如An Athlete XXXName with height of XXX and weight of XXX;BasketballPl...原创 2018-08-23 10:56:05 · 4496 阅读 · 0 评论 -
Java:实现类的继承和各自类的方法(第八周)
题目来源:大工慕课 链接 作者:Caleb Sung题目要求1.阅读Core Java示例代码清单5.1至5.3; 2.实现一人员(Person)类,包括id,name,gender,age等字段以及访问这些字段的方法; 3.通过添加major和gpa的附加字段来实现继承Person类的Student类。 另外,这些方法还包括分别获取所有字段的访问器; 4. Override函数t...原创 2018-08-23 10:38:24 · 706 阅读 · 0 评论 -
Java数据结构:快速排序/Quick sort(第六周)
题目来源:大工慕课 链接 作者:Caleb Sung快速排序:一种高快省的排序算法 有没有既不浪费空间又可以快一点的排序算法呢?那就是“快速排序”啦!光听这个名字是不是就觉得很高端呢。 假设我们现在对“6 1 2 7 9 3 4 5 10 8”这个10个数进行排序。首先在这个序列中随便找一个数作为基准数(不要被这个名词吓到了,就是一个用来参照的数,待会你就知道它...原创 2018-08-26 19:44:04 · 435 阅读 · 0 评论 -
Java:实现一个基于CLI的抽扑克牌游戏(第七周)
题目来源:大工慕课 链接 作者:Caleb Sung题目要求完成CardDeck类,以便您可以通过比较您和计算机抽取的卡片与计算机进行PK。 游戏设计要求:In this game, the value of a card is set from small to big: Ace, 2, 3, 4, 5, 6, 7, 8, 9, 10, Jack, Queen and Ki...原创 2018-04-03 23:48:16 · 479 阅读 · 0 评论 -
Java:创建一个简单类,并测试其方法(第四周)
题目来源:大工慕课 链接 作者:Caleb Sung题目要求阅读Core Java中的示例代码清单4.2。实现一学生类,其Fields包括身份证,姓名,性别,年龄,专业,GPA以及学生已经注册的课程列表。 另外,方法还包括分别获取所有子类的姓名以及已注册课程的行为。在主函数中,创建如下所示的学生数组,然后测试Student类的所有方法。 ID Name G...原创 2018-04-03 23:35:03 · 7939 阅读 · 0 评论 -
Java数据结构:堆排序/Heap Sort(第四周)
题目来源:大工慕课 链接 作者:Caleb Sung堆与堆排序1. 堆排序堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。2. 堆 堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结点的值都小于或等于其左右...原创 2018-08-25 21:25:23 · 300 阅读 · 0 评论