/** * Test client * * @param args */ public static void main(String[] args) { WordNet wordnet = new WordNet("/resources/synsets.txt", "/resources/hypernyms.txt"); Outcast outcast = new Outcast(wordnet); In in = new In("/resources/outcast11.txt"); String[] nouns = in.readAllStrings(); StdOut.println("outcastX.txt: " + outcast.outcast(nouns)); }
/** * Initializes a board from the given filename. * * @param filename the name of the file containing the Boggle board */ public BoggleBoard(String filename) { In in = new In(filename); M = in.readInt(); N = in.readInt(); if (M <= 0) { throw new IllegalArgumentException("number of rows must be a positive integer"); } if (N <= 0) { throw new IllegalArgumentException("number of columns must be a positive integer"); } board = new char[M][N]; for (int i = 0; i < M; i++) { for (int j = 0; j < N; j++) { String letter = in.readString().toUpperCase(); if (letter.equals("QU")) { board[i][j] = 'Q'; } else if (letter.length() != 1) { throw new IllegalArgumentException("invalid character: " + letter); } else if (ALPHABET.indexOf(letter) == -1) { throw new IllegalArgumentException("invalid character: " + letter); } else { board[i][j] = letter.charAt(0); } } } }
public BaseballElimination( String filename) // create a baseball division from given filename in format specified below { In in = new In(filename); String s = in.readLine(); numTeams = Integer.parseInt(s); teamID = new HashMap<String, Integer>(); teams = new String[numTeams]; wins = new int[numTeams]; loses = new int[numTeams]; remains = new int[numTeams]; games = new int[numTeams][numTeams]; for (int i = 0; i < numTeams; i++) { s = in.readLine(); String[] data = s.trim().split("\\s+"); teams[i] = data[0]; teamID.put(teams[i], i); wins[i] = Integer.parseInt(data[1]); loses[i] = Integer.parseInt(data[2]); remains[i] = Integer.parseInt(data[3]); for (int j = 4; j < data.length; j++) { games[i][j - 4] = Integer.parseInt(data[j]); } } }
public static void main(String[] args) { In giris = new In(args[0]); int[] a = giris.readAllInts(); Saat saat = new Saat(); int sayac = say(a); StdOut.println("geçen süre = " + saat.gecenSure()); StdOut.println(sayac); }
public Graph_model(In in) { this(in.readInt()); int E = in.readInt(); for (int i = 0; i < E; i++) { int v = in.readInt(); int w = in.readInt(); addEdge(v, w); } }
public static void main(String[] args) { In in = new In(args[0]); String[] dictionary = in.readAllStrings(); BoggleSolver solver = new BoggleSolver(dictionary); BoggleBoard board = new BoggleBoard(args[1]); int score = 0; for (String word : solver.getAllValidWords(board)) { StdOut.println(word); score += solver.scoreOf(word); } StdOut.println("Score = " + score); }
// constructor takes the name of the two input files public WordNet(String synsets, String hypernyms) { ifNullThrowException(synsets); ifNullThrowException(hypernyms); st = new LinearProbingHashST<String, ArrayList<Integer>>(); In in = new In(synsets); int len = 0; int No; String[] words; ArrayList<String> tempKeys = new ArrayList<String>(); while (in.hasNextLine()) { String[] a = in.readLine().split(","); tempKeys.add(a[1]); No = Integer.parseInt(a[0]); words = a[1].split(" "); for (String word : words) { if (st.contains(word)) { st.get(word).add(No); } else { ArrayList<Integer> list = new ArrayList<Integer>(); list.add(No); st.put(word, list); } } len++; } keys = new String[len]; tempKeys.toArray(keys); G = new Digraph(len); in = new In(hypernyms); while (in.hasNextLine()) { String temp = in.readLine(); String[] a = temp.split(","); int v = Integer.parseInt(a[0]); for (int i = 1; i < a.length; i++) { int w = Integer.parseInt(a[i]); G.addEdge(v, w); } } ifNotDagThrowException(G); sap = new SAP(G); }
public Digraph(In in) { this(in.readInt()); int edge = in.readInt(); try { for (int i = 0; i < edge; i++) { if (in.hasNextLine()) { int v = in.readInt(); int w = in.readInt(); addEdge(v, w); } } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }
/** @param args */ public static void main(String[] args) { // TODO Auto-generated method stub In in = new In("E:\\Further study in north America\\CS\\algorithmI\\collinear\\input6.txt"); int N = in.readInt(); Point[] pts = new Point[N]; for (int i = 0; i < N; i++) { int x = in.readInt(); int y = in.readInt(); pts[i] = new Point(x, y); // pts[i].draw(); } for (int i = 0; i < pts.length - 3; i++) { Arrays.sort(pts, i + 1, pts.length, pts[i].SLOPE_ORDER); Arrays.sort(pts, 0, i, pts[i].SLOPE_ORDER); check(pts, i); } }
public static void main(String[] args) { StdDraw.setXscale(0, 32768); StdDraw.setYscale(0, 32768); StdDraw.show(0); In in = new In(args[0]); int N = in.readInt(); Point[] points = new Point[N]; for (int i = 0; i < N; i++) { int x = in.readInt(); int y = in.readInt(); Point p = new Point(x, y); p.draw(); points[i] = p; } brute(points); StdDraw.show(0); }
public static void main(String[] args) { In in = new In(args[0]); // input file int N = in.readInt(); // N-by-N percolation system // turn on animation mode StdDraw.show(0); // repeatedly read in sites to open and draw resulting system Percolation perc = new Percolation(N); draw(perc, N); StdDraw.show(DELAY); while (!in.isEmpty()) { int i = in.readInt(); int j = in.readInt(); perc.open(i, j); draw(perc, N); StdDraw.show(DELAY); } }
public static void main(String[] args) { In in1 = new In(Inputs.DIGRAPH_SMALL); In in2 = new In(Inputs.DIGRAPH_SMALL); edu.princeton.cs.algs4.Digraph sedgewicks = new edu.princeton.cs.algs4.Digraph(in1); Digraph digraph = new Digraph(in2); in1.close(); in2.close(); StdOut.printf("Sedgewicks - v: %d, e: %d\n", sedgewicks.V(), sedgewicks.E()); for (int i = 0; i < sedgewicks.V(); i++) { for (int w : sedgewicks.adj(i)) { StdOut.printf("%d -> %d\n", i, w); } } StdOut.println(); StdOut.printf("My - v: %d, e: %d\n", digraph.V(), digraph.E()); for (int i = 0; i < digraph.V(); i++) { for (int w : digraph.adj(i)) { StdOut.printf("%d -> %d\n", i, w); } } StdOut.println(); edu.princeton.cs.algs4.Digraph sedwickDi = sedgewicks.reverse(); StdOut.printf("Sedgewicks reverse - v: %d, e: %d\n", sedwickDi.V(), sedwickDi.E()); for (int i = 0; i < sedwickDi.V(); i++) { for (int w : sedwickDi.adj(i)) { StdOut.printf("%d -> %d\n", i, w); } } StdOut.println(); Digraph myReverse = digraph.reverse(); StdOut.printf("My reverse - v: %d, e: %d\n", myReverse.V(), myReverse.E()); for (int i = 0; i < myReverse.V(); i++) { for (int w : myReverse.adj(i)) { StdOut.printf("%d -> %d\n", i, w); } } }
/** * Ex_4.1.4 Ex_Graph_model 生成函数 使用一个没用的类来表明本图不允许自环 * * @param in 输入流 * @param isGraphWithoutSelfLoop 只是一个flag区别构造函数,代码中并未使用 */ public Ex_Graph_model(In in, boolean isGraphWithoutSelfLoop) { this(in.readInt()); int E = in.readInt(); try { for (int i = 0; i < E; i++) { int v = in.readInt(); int w = in.readInt(); if (v == w) { // 自环 throw new SelfLoopException(); } addEdgeWithoutParallelEdges(v, w); } } catch (Exception e) { e.printStackTrace(); } }
public static void main(String args[]) throws IOException { int[] whitelist = In.readInts(args[0]); Arrays.sort(whitelist); Counter counter = new Counter("Keys"); while (!StdIn.isEmpty()) { // Liest Schlüssel ein, gibt ihn aus, wenn er nicht in der Positivliste ist. int key = StdIn.readInt(); if (rank(key, whitelist, counter) < 0) StdOut.println(key); } StdOut.println(counter.toString()); }
/** * Create a baseball division from given filename in format specified below. * * @param filename */ public BaseballElimination(String filename) { In in = new In(filename); int l = in.readInt(); wins = new int[l]; loses = new int[l]; remaining = new int[l]; games = new int[l][l]; for (int i = 0; i < l; i++) { teams.add(in.readString()); wins[i] = in.readInt(); loses[i] = in.readInt(); remaining[i] = in.readInt(); for (int j = 0; j < l; j++) { games[i][j] = in.readInt(); } } }
public static void main(String[] args) { String filename = args[0]; In in = new In(filename); StdDraw.show(0); // initialize the data structures with N points from standard input PointSET brute = new PointSET(); KdTree kdtree = new KdTree(); while (!in.isEmpty()) { double x = in.readDouble(); double y = in.readDouble(); Point2D p = new Point2D(x, y); kdtree.insert(p); brute.insert(p); } double x0 = 0.0, y0 = 0.0; // initial endpoint of rectangle double x1 = 0.0, y1 = 0.0; // current location of mouse boolean isDragging = false; // is the user dragging a rectangle // draw the points StdDraw.clear(); StdDraw.setPenColor(StdDraw.BLACK); StdDraw.setPenRadius(.01); brute.draw(); while (true) { StdDraw.show(40); // user starts to drag a rectangle if (StdDraw.mousePressed() && !isDragging) { x0 = StdDraw.mouseX(); y0 = StdDraw.mouseY(); isDragging = true; continue; } // user is dragging a rectangle else if (StdDraw.mousePressed() && isDragging) { x1 = StdDraw.mouseX(); y1 = StdDraw.mouseY(); continue; } // mouse no longer pressed else if (!StdDraw.mousePressed() && isDragging) { isDragging = false; } RectHV rect = new RectHV(Math.min(x0, x1), Math.min(y0, y1), Math.max(x0, x1), Math.max(y0, y1)); // draw the points StdDraw.clear(); StdDraw.setPenColor(StdDraw.BLACK); StdDraw.setPenRadius(.01); brute.draw(); // draw the rectangle StdDraw.setPenColor(StdDraw.BLACK); StdDraw.setPenRadius(); rect.draw(); // draw the range search results for brute-force data structure in // red StdDraw.setPenRadius(.03); StdDraw.setPenColor(StdDraw.RED); for (Point2D p : brute.range(rect)) p.draw(); // draw the range search results for kd-tree in blue StdDraw.setPenRadius(.02); StdDraw.setPenColor(StdDraw.BLUE); for (Point2D p : kdtree.range(rect)) p.draw(); StdDraw.show(40); } }
public static void main(String[] args) { String input = "C:/Users/gkoontz/workspace/algoAssignments/src/collinear/equidistant.txt"; // read the N points from a file // In in = new In(args[0]); In in = new In(input); int N = in.readInt(); Point[] points = new Point[N]; for (int i = 0; i < N; i++) { int x = in.readInt(); int y = in.readInt(); points[i] = new Point(x, y); } // draw the points StdDraw.show(0); StdDraw.setXscale(0, 32768); StdDraw.setYscale(0, 32768); for (Point p : points) { p.draw(); } StdDraw.show(); // print and draw the line segments // BruteCollinearPoints collinear = new BruteCollinearPoints(points); FastCollinearPoints collinear = new FastCollinearPoints(points); for (LineSegment segment : collinear.segments()) { StdOut.println(segment); segment.draw(); } }
public static void main(String[] args) { // read the n points from a file In in = new In(args[0]); int n = in.readInt(); Point[] points = new Point[n]; for (int i = 0; i < n; i++) { int x = in.readInt(); int y = in.readInt(); points[i] = new Point(x, y); } // draw the points StdDraw.enableDoubleBuffering(); StdDraw.setXscale(0, 32768); StdDraw.setYscale(0, 32768); for (Point p : points) { p.draw(); } StdDraw.show(); // print and draw the line segments FastCollinearPoints collinear = new FastCollinearPoints(points); for (LineSegment segment : collinear.segments()) { StdOut.println(segment); segment.draw(); } StdDraw.show(); }
public static void main(String[] args) { // read the N points from a file args = new String[1]; args[0] = "test/rs1423.txt"; In in = new In(args[0]); int N = in.readInt(); Point[] points = new Point[N]; for (int i = 0; i < N; i++) { int x = in.readInt(); int y = in.readInt(); points[i] = new Point(x, y); } // draw the points StdDraw.show(0); StdDraw.setXscale(0, 32768); StdDraw.setYscale(0, 32768); for (Point p : points) { p.draw(); } StdDraw.show(); // print and draw the line segments FastCollinearPoints collinear = new FastCollinearPoints(points); for (LineSegment segment : collinear.segments()) { StdOut.println(segment); segment.draw(); } }