第三周,我们主要探讨了 哈希算法 与 分治法。分治法是一个通用的算法框架,很多我们日常生活中接触到的算法都可以归类到分治法中。

本周重点

1. 哈希算法及其应用——MD5。大家应该明白哈希算法的主要三个作用,分别为:数据完整性校验、数据保密、快速查找。遇到相应的问题,能够想到使用哈希算法进行求解。

2. 分治法的步骤与要点——大问题分解成小问题、解决小问题、合并小问题的解得到原问题的解,即:分、治、合。并能够用 合并算法、大整数乘法、大矩阵相乘来理解分治法的要点。

3. 能够编写如下三个问题的程序——二分查找、归并排序、快速排序。

作业要求

1. 请各班学委飞信通知同学完成作业。

2. 作业计入平时成绩,计分依据为大家的完成程度——态度(做 / 未做)。老师会根据大家作业的质量选择若干学生进行评论,以及提供个性化教学的依据。请大家依据自身能力,尽可能提供高水平的作业,为提高自身能力全力以赴。
3. 本次作业,老师将会抽查本班学号位于最后5个的同学,请大家相互转告。从第四周开始,将会引入“同伴作业互评”机制,请大家做好准备。即:每个同学阅读本班其他5个同学的作业,并给出并汇总评价,进而达到相互学习的效果。

作业内容

请大家至少完成其中的一题,鼓励完成两道题。把程序源码 与 运行结果截图 发博文到CSDN博客中。
1. 排序。对文件largeW.txt(下载链接)中的数据,编程实现冒泡排序(方法名:bubbleSort) 与 归并排序(mergeSort),把排序后的结果分别保存到largeW_bubble.txt 和 largeW_merge.txt 中,把两种排序结果的运行时间输出到屏幕中(发博文时把运行时间的截图作为运行结果提交)。
     博文标题第三周作业——冒泡排序和归并排序
2. 查找。Bentley在他的著作《Writing Correct Programs》中写道,90%的计算机专家不能在2小时内写出完全正确的二分搜索算法。
二分查找方法原型:int BSearch(int array[], int low, int high, int target ), array——含有若干整数的数组,low 与 high——查找的起始、结束下标,target——待查找的元素。
顺序查找:int SSearch(int array[], int low, int high, int target ),其中S——Sequence(顺序)
数组array中数据来自于第1题中的排序结果文件largeW_bubble.txt,待查找数据来自于文件tinyW.txt(下载链接)。请在控制台输出不在largeW_bubble.txt的数据。
   博文标题第三周作业——顺序查找和二分查找
测试数据来自于《算法》网站,敬表谢意。

补充内容

1. 怎样花两年时间去面试一个人,对大家定位自己有一定的参考价值。
2. 怎样花两月时间去应聘互联网公司,找工作,现在开始准备,可以做什么。
3. 前程无忧网站,搜索“算法”及“算法工程师”的岗位要求有哪些?
命令行参数、文本文件读写示例代码(Java)
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.Scanner;public class ReadData {public static void main(String[] args) throws FileNotFoundException{//从命令行读取两个输入参数,分别为待处理的文本文件,以及保存处理结果的文本文件if(args.length<2){System.out.println("无输入数据!");System.out.println("程序使用方法(示例):ReadData tinyW.txt tinyW_bubble.txt");return;}//从文本文件中读取,并对数据进行处理后(×2),保存到相应的数据文件中String fileInput = args[0];Scanner sc = new Scanner(new File(fileInput));String fileOutput = args[1];PrintWriter pw = new PrintWriter(new File(fileOutput));int data = 0;int num = 0;while(sc.hasNextInt()){data = sc.nextInt();num = num+1;//System.out.println(data);pw.printf("%d: %d\n", num,2*data);}pw.close();sc.close();System.out.println("运行结束,一共有"+num+"个数据。");}
}

计科1111-1114班第三周讲义、课外作业(截止日期:2014年3月27日23点-周四晚,学委飞信通知同学)相关推荐

  1. 计科1111-1114班第一周讲义、课外作业(截止日期:2014年3月12日23点-周三晚,学委飞信通知同学)

    很高兴能够认识大家,并和大家一起学习<算法设计与分析>课程.根据"学习金字塔"理论,"小组讨论.实践练习.向他人讲授/学以致用"是三种主动学习形式. ...

  2. 三周第三次课(12月27日)

    三周第三次课(12月27日) 3.7 su命令 su 切换用户 whoami id su -aming su aming 切换用户,但是没有切换家目录 su - -c "touch /tmp ...

  3. 分享Silverlight/Windows8/WPF/WP7/HTML5周学习导读(5月27日-6月3日)

    分享Silverlight/Windows8/WPF/WP7/HTML5周学习导读(5月27日-6月3日) 本周Silverlight学习资源更新 XAML实例教程系列 - 命名空间(NameSpac ...

  4. 分享Silverlight/WPF/Windows Phone/HTML5一周学习导读(2月27日-3月4日)

    分享Silverlight/WPF/Windows Phone/HTML5一周学习导读(2月27日-3月4日) 本周Silverlight学习资源更新 Silverlight实用窍门系列:57.Sil ...

  5. 分享Silverlight/WPF/Windows Phone一周学习导读(8月22日-8月27日)

    分享Silverlight/WPF/Windows Phone一周学习导读(8月22日-8月27日) 本周Silverlight学习资源更新: ASP.NET与Silverlight简单对比 aa54 ...

  6. 6月27日服务器例行维护公告,6月27日周版本更新维护内容公告

    亲爱的谕霸们: 本周维护时间为6月27日上午8:00-10:00.本次更新后游戏版本号为1.0.364. 重点更新 1. 6月27日-7月3日23:59,"激战·啸苍生"活动中的回 ...

  7. 分享Silverlight/WPF/Windows Phone一周学习导读(11月21日-11月27日)

    分享Silverlight/WPF/Windows Phone一周学习导读(11月21日-11月27日) 本周Silverlight学习资源更新 Silverlight 利用Telerik导出到Wor ...

  8. 虹科动态 | 7月21日-23日,虹科诚邀您参加广州国际汽车电子技术展览会

    在新一轮科技浪潮下,一场深刻的汽车数字化变革已经拉开序幕.聚焦华南汽车研发制造市场,汇集造车领域最新潮流趋势和尖端技术,第九届中国国际汽车技术展览会即将在广州举办. 第九届中国国际汽车技术展览会(AU ...

  9. 提高班第三周周记(中秋第一天)

    这是第三周,也是中秋节.没有月饼的中秋节.但我过得很充实.我很快乐,发自内心的. 中秋第一天早上贾琳师哥讲课.讲他为什么辞职来这里.他的确学成,有着令人羡慕的工资.可是他的问题让我触动. 提到了邓稼先 ...

最新文章

  1. CMU贺斌教授团队提出FAST-IRES技术,利用高密度EEG产生脑信号源的动态图像
  2. 剑指offer系列之六十:序列化二叉树
  3. 关于Office中对%20的转义问题,请知道的大侠帮忙一起想想招儿!
  4. java2d简介_AWT_Java2D简介
  5. Redis:使用Redis的分布式锁
  6. 实验8.3 C++标准模板库(STL)中的双向队列类(deque)
  7. 麦肯锡160页报告:2030年全球将可能有8亿人要被机器抢饭碗
  8. Linux 引导流程解析
  9. 找不到ADO.NET Entity Data Model模板或 sql server database project模板
  10. python脚本(比较两个Excel表格的不同并标记)
  11. php mysql手册下载chm_PHP7教程|PHP7中文手册下载chm版 - 欧普软件下载
  12. 58同城赶集网简历怎么下载?【58同城赶集网简历采集,真实手机号联系方式获取】
  13. python3网络爬虫-介绍
  14. Python实现多个Excel文件合并到一个文件中
  15. 计算机世界:“狗日的”腾讯 搅局者还是终结者
  16. dnf超时空漩涡副本路线流程图_DNF超时空漩涡怎么打
  17. GNSS定位系统开发
  18. 间谍用GAN生成“红发美女”!潜入美国政坛,全网广钓政客
  19. 12312312312332
  20. Android Google Map集成以及部分功能的实现

热门文章

  1. 城堡的emoji表情_和老外聊天,这几个emoji表情不要乱发,内涵太丰富了…
  2. 投资常识-基金-场内场外
  3. 用计算机写作集体备课,如何开展好中职计算机应用基础备课组活动
  4. 实时监控网站内容更新,微信来提醒
  5. 人群里,我更中意温和寡言之人
  6. Java高手是如何练成的
  7. 大学英语听说教程4听力原文及答案
  8. 【docker知识】联合文件系统(unionFS)原理
  9. 耶鲁大学Michel H. Devoret教授荣获2021年“墨子量子奖”
  10. system_process E/WindowManager: Starting window AppWindowToken