Java位运算符

2022-3-3 diaba 基础

Java位运算符有: 左移( << ) 右移( >> ) 无符号右移( >>> ) 位与( & ) 位或( | ) 位非( ~ ) 位异或( ^ ) 除了位非( ~ )是一元操作符外,其它的都是二元操作符 交换两个不等的数方法: //交换两个不相等的数,可以使用「位异或」 a=5; b=6; 通过如下代码: a=a^b; b=a^b; a=a^b; 变为: a==6; b==5; 【注意】如果两个数相等,经过如下代码会得到0 由位运算操作符衍生而来的有: ...

阅读全文>>

评论(0) 浏览(562)

算法——统计岛数量

2022-3-3 diaba 算法

package com.jiucaiyuan.net.question; /** * 统计岛数量 * 【问题】一个矩阵中只有0和1两个数值,每个位置都可以和自己的上、下、左、右四个位置相连, * 如果有一片1连在一起,这个部分叫做一个岛,求一个矩阵中有多少个岛? * 【进阶】 * 如何设计一个并行算法解决这个问题(一张地图,点特别多,需要统计时,并行解决会更快些) * <p> * P12 11.基础提升 有序表、并查集等 00:03 * * @Author jiucaiyuan 2022/3/2 23:58 * @mail s...

阅读全文>>

评论(0) 浏览(579)

算法——拿纸牌,最大积分是多少

2022-3-2 diaba 算法

package com.jiucaiyuan.net.question; /** * 拿纸牌,得到最大分数 * 给定一个整形数组arr,代表数值不同的纸牌排成一条线。玩家A和玩家B依次拿走每张纸牌, * 规定玩家A先拿,玩家B后拿,但是每个玩家每次只能拿走最左或者最右侧的纸牌,玩家A和 * 玩家B都是绝顶聪明。请返回最后胜利者的分数 * <p> * Created by jiucaiyuan on 2022/3/2. */ public class CardsSelect { /** * 给一个纸牌,拿牌规则,从最左侧或者从...

阅读全文>>

评论(0) 浏览(603)

算法——是否为平衡二叉树

2022-3-2 diaba 算法

package com.jiucaiyuan.algrithm.tree; /** * 判断树是否为平衡二叉树 * <p> * Created by jiucaiyuan on 2022/2/4. */ public class BalancedTreeSolution { //传递参数 // 1. 传入根节点 // 2. 返回是否为平衡二叉树 public static boolean isBalanced(TreeNode root) { // 退出条件 // 1. 节点为空,则...

阅读全文>>

评论(0) 浏览(634)

算法——汉诺塔

2022-3-2 diaba 算法

package com.jiucaiyuan.question; /** * 汉诺塔 * <p> * Created by jiucaiyuan on 2022/2/4. */ public class HannuoTower { public static void main(String[] args) { hannuoTower(16); } public static void hannuoTower(int n) { if (n > 0) { move...

阅读全文>>

标签: 算法 汉诺塔 递归

评论(0) 浏览(605)

常用工具

2022-3-2 diaba 调优命令

demesg可以用来查看开机之后的系统日志,其中可以捕捉到一些系统资源与进程的变化信息。 dmesg dmesg | grep -E 'kill|oom|out of memory' --col top top -Hp pid jps -l 类似linux的 ps -ef 查看进程状态 jstack 进程号 //查看堆栈信息 jstat -gccause 18356 1000 1000 jstat -class 18356 jstat -compiler 18356 jstat -gc 18356 ...

阅读全文>>

评论(0) 浏览(519)

Powered by emlog 京ICP备15045175号-1 Copyright © 2022