博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
算法(第4版)Robert Sedgewick 刷题 第一章(1)
阅读量:5317 次
发布时间:2019-06-14

本文共 2946 字,大约阅读时间需要 9 分钟。

/**     * @Description 颠倒数组排列顺序     * @author SEELE     * @date 2017年8月17日 上午10:56:17     * @action sortArr     */    public static void sortArr() {        int[] b = new int[6];        int[] a = { 1, 2, 3, 4, 5, 6, 7 };        for (int i = 0; i < a.length / 2; i++) {            int temp = a[a.length - 1 - i];            a[a.length - 1 - i] = a[i];            a[i] = temp;        }        System.out.println(Arrays.toString(a));    }    /**     * @Description 判读一个数是否是素数     * @author SEELE     * @date 2017年8月17日 上午11:00:02     * @action sushu     */    public static void sushu() {        int N = 17;        if (N < 2) {            System.out.println("不是素数");        }        for (int i = 2; i * i <= N; i++) {            if (N % i == 0) {                System.out.println("不是素数");                return;            }        }        System.out.println("是素数");    }    /**     * @Description 计算平方根,牛顿迭代法     * @author SEELE     * @date 2017年8月17日 上午11:16:17     * @action sqrt     * @param c     * @return     */    public static double sqrt(double c) {        if (c < 0) {            return Double.NaN;        }        double err = 1e-15;        double t = c;        while (Math.abs(t - c / t) > err * t) {            t = (c / t + t) / 2.0;        }        return t;    }    /**     * @Description (自写)二分查找,先做一个从小到大的数组排序     * @author SEELE     * @date 2017年8月17日 下午2:33:52     * @action erfenfind     */    public static void erfenfind() {        int[] a = { 54, 54, 56, 56, 78, 8, 3232, 56, 546, 546, 46, 7854, 12, 3255, 58, 678, 585, 23, 45, 3, 6, 8, 89,                6 };        System.out.println(Arrays.toString(a));        int find = 8;        Arrays.sort(a);        System.out.println(Arrays.toString(a));        int lo = 0;        int hi = a.length - 1;        while (lo <= hi) {            int mid = lo + (hi - lo) / 2;            if (find > a[mid]) {                lo = mid + 1;            } else if (find < a[mid]) {                hi = mid - 1;            } else {                System.out.println(mid + "---" + a[mid]);                break;            }        }    }        /**     * 将一个正整数的转换成二进制,并已字符串打印出来     */    public static void binaryString() {        long N = 5646753274687L;        String s = "";        for (long n = N; n > 0; n /= 2)            s = (n % 2) + s;        System.out.println(s);    }        /**     * 1.1.13 编写一段代码,打印出一个M 行N 列的二维数组的转置(交换行和列)。     */    public static void MNtoNM() {        int b = 0;        int m = 10;        int n = 3;        int[][] a = new int[m][n];        for (int i = 0; i < a.length; i++) {            for (int j = 0; j < a[i].length; j++) {                a[i][j] = b;                b++;            }        }        for (int[] is : a) {            for (int i : is) {                System.out.print(i+" ");            }            System.out.println();        }        int[][] c = new int[n][m];        for(int i=0;i

 

转载于:https://www.cnblogs.com/wzk1992/p/7382981.html

你可能感兴趣的文章
第十六周学习进度
查看>>
数据库的操作
查看>>
FILTER:progid:DXImageTransform.Microsoft.Gradient使用
查看>>
POJ 3208-Apocalypse Someday(数位dp)
查看>>
Stamps and Envelope Size
查看>>
取某字段不为空的数据is not null
查看>>
当失去焦点时 验证时分秒 并提示
查看>>
增加控制条到视频播放
查看>>
Javascript模块化编程(三):require.js的用法
查看>>
HTML: Dom event
查看>>
titanium好的学习网站推荐
查看>>
Flyweight模式_Java中23种设计模式
查看>>
vue 中生成二维码之爬坑之路
查看>>
@Component 和 @Bean 的区别
查看>>
Linux安全篇-iptables
查看>>
div中溢出文字用点代替
查看>>
UVA - 489 Hangman Judge
查看>>
返回一个一维数组环中的数相加的最大的和
查看>>
55分钟学会正则表达式
查看>>
python1119-20181205作业-郭恩赐提交
查看>>