zoukankan      html  css  js  c++  java
  • 【第五天打卡。

    Bag Sample

    Compute the average and simple standard deviation of the double values on standard input

    public class Stats {
        public static void main (String[] args) {
            Bag<Double> numbers = new Bag<Double>();
            while(!StdIn.isEmpty) 
                numbers.add(StdIn.readDouble());
            int N = numbers.size();
            double sum = 0.0;
            for (double x : numbers)
                sum += x;
            double mean = sum/N;
            sum = 0.0;
            for (double x : numbers)
                sum += (x-mean)*(x-mean);
            double std = Math.sqrt(sum/(N-1));
            StdOut.printf("Mean: %.2f
    ", mean);
            StdOut.printf("Std dev: %.2f
    ", std);
     
        }
    }
    View Code

    FIFO Queues

    Sample queue client

    public static int[] readInts (String name) {
        In in = new In(name);
        Queue<Integer> q = new Queue<Integer>();
        while(!in.isEmpty()) 
            q.enqueue(in.readInt());
        int N = q.size();
        int[] a = new int[N];
        for(int i = 0; i < N; i++) 
            a[i] = q.dequeue();
        return a;
    }
    View Code

    LIFO Stacks

    Sample stack client

    public class Reverse {
        public static void main (String[] args) {
            Stack<Integer> stack = new Stack<Integer>();
            while(!StdIn.isEmpty()) 
                stack.push(StdIn.readIn());
            for(int i : stack)
                StdOut.println(i);
        }
    }
    View Code

    Dijkstra's Two-Stack Algorithm for Expression Evaluation

    public class evaluate {
        public static void main(String[] args) {
            Stack<String> ops = new Stack<String>();
            Stack<Double> vals = new Stack<Double>();
            while (!StdIn.isEmpty){
                String s = StdIn.readString();
                if (s.equals("("));
                else if (s.equals("+"))    ops.push(s);
                else if (s.equals("-"))     ops.push(s);
                else if (s.equals("*"))    ops.push(s);
                else if (s.equals("/"))     ops.push(s);
                else if (s.equals(")"))     ops.push(s);
                else if (s.equals("sqrt")) ops.push(s);
                else if (s.equals(")")) {
                    String op = ops.pop();
                    Double v = vals.pop();
                    if (op.equals("+"))    v = vals.pop() + v;
                    else if (op.equals("-")) v = vals.pop() - v;
                    else if (op.equals("*")) v = vals.pop() * v;
                    else if (op.equals("/")) v = vals.pop() / v;
                    else if (op.equals("sqrt")) v = Math.sqrt(v);
                    vals.push(v);
                }
                else vals.push(Double.parseDouble(s));
            }
            StdOut.println(vals.pop());
        }    
    }
    View Code
  • 相关阅读:
    Kali下的内网劫持(三)
    Kali下的内网劫持(四)
    Kali下的内网劫持(二)
    Kali下的内网劫持(一)
    PHP中is_numeric函数十六进制绕过0day
    Linux之RHEL7root密码破解(三)
    Linux之RHEL7root密码破解(二)
    python selenium3 自动化测试
    spring boot
    记Too many open files错误
  • 原文地址:https://www.cnblogs.com/moonlightshadow/p/7326081.html
Copyright © 2011-2022 走看看