一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 11802|回复: 83
收起左侧

[Coursera] Algorithms (princeton) (week1) 讨论帖

  [复制链接] |试试Instant~ |关注本帖
sanguine 发表于 2014-1-30 10:39:36 | 显示全部楼层 |阅读模式

[Coursera]Algorithms #1 - 2014-01-31@Princeton

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x
本帖最后由 sanguine 于 2014-3-19 17:07 编辑

Honor code.   All students in the course must agree to abide by the Coursera honor code. In particular, do not post solutions or partial solutions to programming assignments; however, you are permitted to discuss general ideas and problem-solving approaches. You are also permitted to discuss solutions to exercises and job interview questions.
assignments不可以share code,但是exercise和job interview questions是可以的

讨论帖(该贴仅为week1讨论帖,加分贴请点这里)

课程汇总 && 介绍:http://www.1point3acres.com/bbs/thread-78774-1-1.html

Schedule

Each Friday at 12:01pm EDT, we will release the course materials for the week: two lectures, two sets of exercises, a programming assignment, and two sets of job interview questions.


  • Exercises: due two weeks after they are released.
  • Programming assignments: due two weeks after they are released.
  • Job interview questions: for your own enrichment and not assessed.

Week 1

We begin our study of algorithms with a motivating example and an overview of the use of the scientific method for studying algorithm performance.

Lecture: Union-Find. We illustrate our basic approach to developing and analyzing algorithms by considering the dynamic connectivity problem. We introduce the union-find data type and consider several implementations (quick find, quick union, weighted quick union, and weighted quick union with path compression). Finally, we apply the union-find data type to the percolation problem from physical chemistry.

Lecture: Analysis of Algorithms. The basis of our approach for analyzing the performance of algorithms is the scientific method. We begin by performing computational experiments to measure the running times of our programs. We use these measurements to develop hypotheses about performance. Next, we create mathematical models to explain their behavior. Finally, we consider analyzing the memory usage of our Java programs.

Exercises. Drill exercises on the lecture material.

Programming Assignment: Percolation. Your programming assignment will give you an opportunity to apply these concepts to a fundamental problem in physical chemistry. It is the first of many examples where a good algorithm—in this case, weighted quick union—makes the difference between being able to efficiently solve a problem and not being able to address it at all.

Job Interview Questions. Algorithmic interview questions based on the lecture material.

Suggested readings. Section 1.4 and 1.5 in Algorithms, 4th edition.



prelude 发表于 2014-2-4 11:40:32 | 显示全部楼层
说一下在Eclipse 中
import 两个API jar包的问题,通过Project - properties - Libraries - add external jars 后依然无法使用里面的API,是由于这两个Jar是default没有“路径”,eclipse没有办法去引用他们,所以要在  http://algs4.cs.princeton.edu/code/  页面下面下载
http://algs4.cs.princeton.edu/code/stdlib-package.jar
http://algs4.cs.princeton.edu/code/algs4-package.jar
然后add external jars,这样在java文件里添加
import edu.princeton.cs.algs4.*;
import edu.princeton.cs.introcs.*;
就可以了

评分

5

查看全部评分

回复 支持 2 反对 0

使用道具 举报

prelude 发表于 2014-2-10 07:34:24 | 显示全部楼层
本帖最后由 prelude 于 2014-2-10 07:36 编辑

Week1 作业:
关于在Eclipse中 用PercolationVisualizer.java 可视化结果的问题,首先你要把按规则写好的Percolation.java准备好,然后
在eclipse中确保这两个文件在同一个Package下,如果顺利将无编译错误。
这个PercolationVisualizer是要求有参数的,要读取本地的文件(文件可以从这里下载http://coursera.cs.princeton.edu/algs4/testing/percolation/
然后在eclipse - run - run configuration - Arguments - programs Arguments里加上参数名 就是文件名比如说下载的文件为:input50.txt
然后这个input50.txt文件一定要放在project目录下,例如:我的默认workspace叫workspace,project名称叫2014Spring
那么就放到D:\Eclipse\workspace\2014Spring 就可以了!(和percolationvisualizer放到一个目录是没用的)

QQ截图20140209153613.jpg

评分

1

查看全部评分

回复 支持 1 反对 0

使用道具 举报

 楼主| sanguine 发表于 2014-2-12 16:56:33 | 显示全部楼层
回复 支持 反对

使用道具 举报

ericcire 发表于 2014-2-7 20:28:05 | 显示全部楼层
竟然有一组数据是这样的。。。。。。
greeting57.png
回复 支持 1 反对 1

使用道具 举报

qiamoe 发表于 2014-2-3 12:42:23 | 显示全部楼层
本帖最后由 qiamoe 于 2014-2-3 22:00 编辑

没看明白assignment如果想用eclipse做要怎么搞
有没有大神懂的呀
============
啊。。总算把DrJava装好了...但是Eclipse不能用了
想问一下要怎么才能吧给的俩jar文件当API用呢。。。
之前脑残试了下extends WeightedQFU貌似不对。。。
求解答,渣渣不想在第一个assignment就倒下啊QvQ
回复 支持 反对

使用道具 举报

shindave 发表于 2014-2-3 22:32:40 | 显示全部楼层

为啥不用eclipse
先装个JDK 7uxx
然后配置环境变量 http://jingyan.baidu.com/article/6dad5075d1dc40a123e36ea3.html
然后下个eclipse 注意如果你的JDK是x64的那么eclipse也要是x64 同理32位也一样
作业应只需上传两个java文件吧  打包
然后下下来两个附赠的jar 在你的新建项目中导入 http://blog.csdn.net/justinavril/article/details/2783182
然后就可以在你的工程里用jar的api了

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

qiamoe 发表于 2014-2-3 22:52:37 | 显示全部楼层
shindave 发表于 2014-2-3 22:32
为啥不用eclipse
先装个JDK 7uxx
然后配置环境变量 http://jingyan.baidu.com/article/6dad5075d1dc40a ...

╮( ̄▽ ̄")╭ 本来觉得既然是他推荐的会有什么福利来着,不过事实证明还是eclipse好用
谢谢啦~
还有请问把reference的jar导入之后要import什么才能去用是么?
回复 支持 反对

使用道具 举报

shindave 发表于 2014-2-3 23:23:46 | 显示全部楼层
qiamoe 发表于 2014-2-3 22:52
╮( ̄▽ ̄")╭ 本来觉得既然是他推荐的会有什么福利来着,不过事实证明还是eclipse好用
谢谢啦~
还有请 ...

是的 eclipse把鼠标放在红波浪线上可以按照提示来自动import
如果嫌麻烦,可以直接import xx.xxx.*
那个*的意思就是导入此包种的所有类
回复 支持 反对

使用道具 举报

 楼主| sanguine 发表于 2014-2-3 23:34:43 | 显示全部楼层
本帖最后由 sanguine 于 2014-2-4 11:18 编辑
shindave 发表于 2014-2-3 23:23
是的 eclipse把鼠标放在红波浪线上可以按照提示来自动import
如果嫌麻烦,可以直接import xx.xxx.*
那 ...

直接用快捷键ctrl+shift+O,可以导入所有缺失的import包,顺便删除没使用过的import包
回复 支持 反对

使用道具 举报

sylor 发表于 2014-2-4 05:08:59 | 显示全部楼层
shindave 发表于 2014-2-3 23:23
是的 eclipse把鼠标放在红波浪线上可以按照提示来自动import
如果嫌麻烦,可以直接import xx.xxx.*
那 ...

提示不出来import哪个啊。。。。手写我也不知道路径。。。。
PS:好烦啊,用啥外部jar包啊,还不给个api手册,蛋疼。。。。
回复 支持 反对

使用道具 举报

qiamoe 发表于 2014-2-4 10:21:26 | 显示全部楼层
sylor 发表于 2014-2-4 05:08
提示不出来import哪个啊。。。。手写我也不知道路径。。。。
PS:好烦啊,用啥外部jar包啊,还不给个api ...

同import不出来QAQ
回复 支持 反对

使用道具 举报

帅哥曲线救国 发表于 2014-2-4 11:02:53 | 显示全部楼层
I have some problems about how to use algs4.jar and stdlib.jar . I have already insert jar files like this.  Then I don't know how to use command import to use the jar.file
回复 支持 反对

使用道具 举报

帅哥曲线救国 发表于 2014-2-4 11:07:42 | 显示全部楼层
帅哥曲线救国 发表于 2014-2-4 11:02
I have some problems about how to use algs4.jar and stdlib.jar . I have already insert jar files lik ...

I will go back home later. I can't try your way to do that now.
回复 支持 反对

使用道具 举报

qiamoe 发表于 2014-2-4 11:18:52 | 显示全部楼层
快捷键试了木有用。。。default设置里add import 的快捷键在ctrl+shift+M。。。但还是毫无反应
回复 支持 反对

使用道具 举报

ericcire 发表于 2014-2-4 14:55:07 | 显示全部楼层
第一次用java,表示还是直接用他的DrJava省事,虽然没有自动完成确实有点不适应,但是也没几行程序所以无所谓了。
有谁想出来如何不用两个uf防止backwash了么。试了几种方法都达不到timing的要求。。。
回复 支持 反对

使用道具 举报

prelude 发表于 2014-2-5 15:47:29 | 显示全部楼层
Which of the following id[] array(s) could be the result of running the weighted quick union
algorithm on a set of 10 items? Check all that apply.

这个习题大家都是什么判断依据?
回复 支持 反对

使用道具 举报

jlsqsd 发表于 2014-2-6 23:42:28 | 显示全部楼层
本帖最后由 jlsqsd 于 2014-2-6 23:46 编辑

Q. If I use a named package to structure my code, the compiler can no longer access the libraries in stdlib.jar or algs4.jar. Why not?
A. The libraries in stdlib.jar and algs4.jar are in the "default" package. In Java, you can't access classes in the default package from a named package. If you need to use our libraries with a named package, you can use these package versions: stdlib-package.jar and algs4-package.jar.
Warning: if you are taking Princeton COS 226 or Coursera, Algorithms, Part I or II, you must use the default package verison of our libraries to facilitate grading.

Link: http://algs4.cs.princeton.edu/code/


Choose the default package when you create classes.
回复 支持 反对

使用道具 举报

rsun 发表于 2014-2-7 20:55:35 | 显示全部楼层
ericcire 发表于 2014-2-7 20:28
竟然有一组数据是这样的。。。。。。

听说有一门课有提供中文字幕,忘了是不是这门课了
回复 支持 反对

使用道具 举报

gold4848 发表于 2014-2-8 01:32:07 | 显示全部楼层
刚开始做就不知所措了,我们是把他specification里的那段代码里的各种方法补全吗?
第一个N*N该怎么生成啊?
回复 支持 反对

使用道具 举报

gold4848 发表于 2014-2-8 15:52:21 | 显示全部楼层
import edu.princeton.cs.algs4.*;
import edu.princeton.cs.introcs.*;
在feedback里被报 package does not exist, how to fix this?
回复 支持 反对

使用道具 举报

jlsqsd 发表于 2014-2-8 16:13:55 | 显示全部楼层
gold4848 发表于 2014-2-8 15:52
import edu.princeton.cs.algs4.*;
import edu.princeton.cs.introcs.*;
在feedback里被报 package does  ...

你用的named package 还是 unnamed package?
如果用的unnamed,在新建class的时候,选defualt package。 接下去直接引用即可,不用import。

Warning: if you are taking Princeton COS 226 or Coursera, Algorithms, Part I or II, you must use the default package verison of our libraries to facilitate grading.
回复 支持 反对

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-9 16:05

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表