- 博客(9)
- 资源 (1)
- 问答 (1)
- 收藏
- 关注
原创 动态连通性问题
动态连通性问题算法实现及优化首先定义算法的API 方法 作用 UF(int N) 初始化触点及其他数据 int find(int p) 返回p所在连通分量的标识符 int union(int p,int q) 在p和q之间添加一条线 int count () 返回连通分量的数量 boolean connected(int p,int q) 如果p和q之间
2016-05-30 13:37:00 579
原创 第一个算法优化例子
统计数组中不相同的两个数和为零的个数时间复杂度为线性对数import java.util.Arrays;public class TwoSumFast { public static int count(int[] a){ Arrays.sort(a); int N = a.length; int cnt = 0; for(i
2016-05-25 21:58:34 599
原创 栈和队列(使用链表实现)
1.栈import java.util.Iterator;public class Stack<Item> implements Iterable<Item>{ private int N; private Node first; private class Node { Node next; Item item; }
2016-05-25 11:16:14 565
原创 算法1.1 下压栈(LIFO)能动态调整数组的大小
算法1.1 下压栈(LIFO)能动态调整数组的大小代码实现如下:public class ResizingArrayStack<Item> implements Iterable<Item>{ private Item[] a = (Item[]) new Object[1];//栈元素 private int N = 0;//元素数量 public boolean isEmp
2016-05-23 23:52:04 652
原创 Dijkstra的双栈算数表达式求值算法
Dijkstra的双栈算数表达式求值算法说明:这个算法的输入要求是必须补全所有括号,否则算法会出错,数字和符号之间应该留有一个空格。import edu.princeton.cs.algs4.Stack;import edu.princeton.cs.algs4.StdIn;import edu.princeton.cs.algs4.StdOut;public class Evaluate {
2016-05-22 23:24:24 587
原创 算法四 第一章第一节基础习题
算法四第一章基础习题我只给出了代码类的习题 1.1.3 编写一个程序,从命令行得到三个整数参数。如果它们都相等则打印 equal,否则打印 not equal。 package chapter1;import edu.princeton.cs.algs4.StdIn;//这是算法第四版这本书里面的类库import edu.princeton.cs.algs4.StdOut;public cla
2016-05-20 15:34:29 2750 6
原创 第一章 答疑摘选
在第一章后面,作者列出了一些问题并给出了回答,我将其中的一些我不熟悉的问题。1.问 如何才能将一个 double 变量初始化为无穷大? 答 可以使用 Java 的内置常数:Double.POSITIVE_INFINITY 和 Double.NEGATIVE_INFINITY。 2. 问 Java 表达式 1/0 和 1.0/0.0 的值是什么? 答 第一个表达式会产生一个运行时除零异常
2016-05-19 23:21:03 265
原创 典型的数组和字符串处理代码
表1.1.4典型数组处理代码注:仅实现了关键代码,数组以double型数组为例找出数组中的最大值double max = a[0];for(int i = 1;i<a.length;i++) if(max < a[i]) max = a[i];2.计算数组的平均值double sum = 0;int N = a.length;for(int i = 0;i <N;i
2016-05-19 14:08:26 427
原创 计算两个非负整数的最大公约数
算法第四版代码现在开始学习算法,准备把书上的代码实现一遍,算是对自己学习的一个检验,希望自己可以坚持下去。计算两个非负整数 p 和 q 的最大公约数:若 q 是 0,则最大公约数为 p。否则,将 p 除以 q 得到余数 r,p 和 q 的最大公约数即为 q 和 r 的最大公约数。public static int gcd(int p, int q){ if(q == 0) r
2016-05-19 13:05:42 2379
为什么new了一个对象调用自己的方法不行??
2016-06-27
TA创建的收藏夹 TA关注的收藏夹
TA关注的人