02 2023 档案
摘要:1、位运算 顾名思义,位运算符作用于位,是逐位进行操作。最常用的有:与 &、或 |、异或 ^。 对于基本的位运算,我们有一个常用的口诀: 1.按位与 &:遇0则0 2.按位或 |:遇1则1 3.按位异或 ^ :相同为0,相异为1 4.左移 <<: a << n,相当于 a * 2^n 5.带符号右移
阅读全文
摘要:1、比较器 Comparator 所有的Comparator返回: 负数:认为第一个参数应放前面 正数:认为第二个参数应放前面 零:相等,那个放前面无所谓 1.定义与使用 实现Comparator接口重写方法 int compare(T o1, T o2); public class StuIdCo
阅读全文
摘要:1、LRU是什么 LRU(Least Recently Used)最近最少使用, package com.algorithm; import java.util.Arrays; import java.util.HashMap; import java.util.Map; /** * LRU算法(L
阅读全文
摘要:1、定义 二叉树(binary tree)是指树中节点的度不大于2的有序树 ①在二叉树中,一个节点最多有两颗子树,二叉树节点的度<=2 ②二叉树的有左右之分,且子树的次序不能颠倒,因此二叉树是有序树 2、二叉树的遍历操作 对于二叉树来说,一共有四种遍历方式 ①深度优先遍历(dfs):先序遍历(根左右
阅读全文
摘要:1、常见排序算法,及其时间复杂度 5、归并排序 归并排序是建立在归并操作上的一种有效,稳定的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称
阅读全文
摘要:1、单链表 public class Node { public int val; public Node next; public Node(int value) { this.val = value; } } 1.1、单链表反转 1.2、代码实现 点击查看代码 public class Reve
阅读全文
摘要:1、按位异或运算 ^ 按位异或(^): 相同为0,不同为1; 按位异或(^): 相当于无进位相加 例如:01010 ^ 01101 = 00111 特性: 任何数异或上0等于其本身: 0 ^ n = n 两个相同的数异或为0: n ^ n = 0 异或运算满足交换律,和结合律 交换:a ^ b =
阅读全文