题目原文详见http://coursera.cs.princeton.edu/algs4/assignments/collinear.html 程序的主要目的是寻找n个points中的line segment,line segment的要求就是包含不少于4个点. 作业包含三部分程序实现: 一.Point compareTo()用来比较本节点this与其他节点that的大小:假如this节点坐标(x0, y0),that节点坐标(x1, y1),只有y0 < y1或(y0==y1 &&…
题目来源http://coursera.cs.princeton.edu/algs4/assignments/percolation.html 作业分为两部分:建立模型和仿真实验. 最关键的部分就是建立模型对象.模型对象要求如下: The model.  We model a percolation system using an n-by-n grid of sites. Each site is either open or blocked. A full site is an open s…
Programming Assignment 3: Pattern Recognition 1.题目重述 原题目:Programming Assignment 3: Pattern Recognition 题目给定n个二维平面点,搜索能够连成线的大于等于四个点的集合.需要分别实现三个类,点的类,暴力搜索,快速搜索. 点的类需要实现根据点的坐标比较以及两个点根据某个点的斜率的比较. 暴力搜索和快速搜索均需要实现寻找点的功能. 2.分析 主要是分析如何实现暴力搜索和快速搜索. 2.1 暴力搜索 这个…
题目地址:http://coursera.cs.princeton.edu/algs4/assignments/kdtree.html 分析: Brute-force implementation. 蛮力实现的方法比较简单,就是逐个遍历每个point进行比较,实现下述API就可以了,没有什么难度. import java.util.ArrayList; import java.util.TreeSet; import edu.princeton.cs.algs4.Point2D; import…
编程作业三 作业链接:Pattern Recognition & Checklist 我的代码:BruteCollinearPoints.java & FastCollinearPoints.java & Point.java 问题简介 计算机视觉涉及分析视觉图像中的模式并重建产生它们的现实世界对象.该过程通常分为两个阶段:特征检测和模式识别.特征检测涉及选择图像的重要特征:模式识别涉及发现特征中的模式.我们将研究一个涉及点和线段的特别简单的模式识别问题.这种模式识别出现在许多其他…
作业原文:http://coursera.cs.princeton.edu/algs4/assignments/queues.html 这次作业与第一周作业相比,稍微简单一些.有三个编程练习:双端队列(Deque)设计.随机队列(Randomized Queue)设计,还有一个排列组合类Permutation. 一.双端队列Deque 设计要求:A double-ended queue or deque (pronounced "deck") is a generalization o…
题目原文:http://coursera.cs.princeton.edu/algs4/assignments/8puzzle.html 题目要求:设计一个程序解决8 puzzle问题以及该问题的推广,例如8-puzzle是3*3,程序要能解决n*n的同类问题(2 ≤ n < 128) 典型的8 puzzle如下: 算法设计参照A*搜索算法,即使不了解A*搜索算法,题目也已经将解法解释的很具体了. Best-first search:设计参照A* 搜索算法.定义一个 search node类,包…
自我总结: 1.编程的思维不够,虽然分析有哪些需要的函数,但是不能比较好的汇总整合 2.写代码能力,容易挫败感,经常有bug,很烦心,耐心不够好 题目: In this programming assignment you will implement one or more of the integer multiplication algorithms described in lecture. To get the most out of this assignment, your pro…
Coursera CSE341: Programming Languages 感谢华盛顿大学 Dan Grossman 老师 以及 Coursera . 碎言碎语 这只是 Programming Languages 这门课程第一部分,在 Part A 中通过 Standard ML 这门编程语言把函数式编程的美妙娓娓道来.在 Part B 以及 Part C 中分别会学习 Racket 以及 Ruby . 这是一门什么样的课呢?首先,它很好玩,虽然我学过 Scala 学过一些 Scheme,但还…
Introduction The problem of searching for patterns in data is a fundamental one and has a long and successful history. For instance, the extensive astronomical observations of Tycho Brahe in the 16th century allowed Johannes Kepler to discover the em…