自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 lab1 实验报告

相同转向角点,可以在循环中使用标记变量DistTarget记录其与当前目标点的距离,如果之后出现了新的目标点,就用DistTarget和计算得到的当前点的距离DistTemp来比较,取大者为新的DistTarget。感觉CMU和MIT的作业十分注重和现实的链接和趣味性,MIT的作业在实现了初步对于turtle 画图的了解后,鼓励大家开发创造力,绘制自己的个性图案,具有趣味性,也实现了让学生自己进行操作、试验的目的。第一个点作为起点,循环n-1次,这一次的终点作为第一次的起点,到第n个点作为终点。

2024-05-23 00:41:24 564

原创 lab2 实验报告

两个类都实现Graph接口中的功能,但是实现的方法不同,ConcreteVerticesGraph保存点集和与点集中元素相连的边及和权值,ConcreteEdgesGraph保存点对,起点和终点及对应权值。各自实现功能,并设计两个方法的测试。除了重复人名Person的添加是在mian()中进行测试,其他,两人之间没有路、两人直接有联系,两人间接联系、自己与自己的联系,都在测试类中进行测试。首先要明确,各个接口中函数的功能,再根据具体的功能,划分出客户端可能的输入,对各种情况进行结果的设计和测试类的设计。

2024-05-23 00:27:14 926

原创 lab3 实验报告

本次实验给定了三个具体应用(值班表管理、操作系统进程调度管理、大学课表管理),学生不是直接针对每个应用分别编程实现,而是通过 ADT 和泛型等抽象技术,开发一套可复用的 ADT 及其实现,充分考虑这些应用之间的相似性和差异性,使 ADT 有更大程度的复用(可复用性)和更容易面向各种变化(可维护性)。面向ADT的编程和直接面向应用场景的编程有明显的差异。在这里,通过遍历进程,用每个进程的最大执行时间减去已执行时间得到每个进程的剩余执行时间,选取剩余执行时间最短的进程作为下一个要执行的进程。

2024-05-23 00:16:32 365

原创 不变量与防御性拷贝

并且,用户端不能直接获得的数据,也要进行同样的操作,复杂的程序之间通常有很强的关联,避免外力干扰影响数据的安全。例如,在网易的一款游戏《光遇》中,我们要想知道人物的身高,要通过与游戏中建筑的对比,得出近似的身高等级。通过游戏界面无法得到的,被保护的数据,可以通过其他工具获得,如果没有数据的不变性、防御性拷贝,那么游戏的稳定将无法维护。例如,用户端用户的更改、黑客的恶意修改数据...但是,网络上,有很多人售卖身高检测(次数)或者身高检测(永久使用权),通过人物的原ID,就能得到具体的身高、身材参数。

2024-05-22 23:24:03 257 1

原创 Lab 2 泛化

作者在设计add功能判断是否出现重名成员时,是依据图中是否有点与之相等,在成员是String类型时,体现不出问题,因为类型的特殊,成员的名字就是成员本身,那么该处写的判断图中成员是否与待加入的成员重名时,直接判断成员是否重复就能实现判断成员名称是否重复。进行具体功能的设计,最后才根据接口统一泛化成<L>,于是在ADT的实现中,可能用到的方法并不能完全在<L>中进行替换,这有时候是编程人员思维的局限,不能全面、长远的考虑到后续的应用。“对具体实现代码的进行泛化,得到使用抽象类<L>的实现。

2024-05-08 00:12:27 298 1

原创 String and StringBuilder不可变类型与可变类型

在t的尾部加上"c"后,String类型为t重新创建空间,拷贝原有字符串,并加上c,实现t的返回值展现出尾部加"c"的效果。原本s、t都指向String"ab",在对t进行尾端加"c"的操作之后,并没有改变s的值,s依旧指向原位置,和它开始时指向同一个位置的t的操作并不会影响到它。而tb进行尾部加"c"的操作,直接将原空间中的值改变,所有指向这个位置的引用,都会随之发生改变,sb的返回值收到tb操作的影响,也变成了尾部加"c"的效果。内存空间的位置没有改变,将原有的"a"替换成"ab".

2024-04-10 23:14:32 311

原创 使用git进行操作时遇到的一些小毛病

经查询,应该是远程仓库和本地仓库有差异,猜测远程仓库中的README文件影响了git的操作。总结经验:各种报错,只要是可知的,就都不是大问题,一步步去搜索、查找此处报错的解决办法。在终端中,操作后加上“ --allow-unrelated-histories”就好了。push时报错要先进行pull操作,pull操作又失败,陷入僵局。经查询,又是本地的代码和远程的不同步,要先进行pull,再push。又出现,有未提交的更改,不能进行pull操作。git需要得知我要进行操作的分支,才可以。

2024-04-09 03:30:00 129 1

原创 github 与网络问题

经过配置好的git,仓库统一了、代码同步了,还是出现问题,不能进行pull\push操作。先检查是不是网络问题,GitHub可能出现不稳定的问题,使用手机热点或者挂一个梯子。

2024-04-08 23:26:26 134

原创 Lab-1 3.1.2generateMagicSquare() 偶数异常

在这段生成幻方的代码中,要是矩阵的宽度,即n,输入为偶数时会出现报错。: 12这是为什么呢?首先,我们先了解这段报错是什么意思。是一个运行时异常,表示尝试访问数组的索引超出了数组界限(即索引小于0或者大于等于数组的大小)。参数n作为幻方的行列数,初始位置为(0, n / 2), 初始位置赋值1,之后依次把数字2 ~ n * n赋值给一个位置,下一个位置为当前位置的右上。根据所在位置的坐标和n的值计算出下一个位置。边界情况:当前行是第一行,则下一行取最后一行;当前列是最右边列,则下一列取最左边列。

2024-04-08 22:48:47 223

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除