java
未读1.leetcode 990. 等式方程的可满足性
给定一个由表示变量之间关系的字符串方程组成的数组,每个字符串方程 equations[i] 的长度为 4,并采用两种不同的形式之一:"a==b" 或 "a!=b"。在这里,a 和 b 是小写字母(不一定不同),表示单字母变量名。
只有当可以将整数分配给变量名,以便满足所有给定的方程时才返回 true,否则返回 false。
示例 1:
123输入:["a==b","b!=a"]输出:false解释:如果我们指定,a = 1 且 b = 1,那么可以满足第一个方程,但无法满足第二个方程。没有办法分配变量同时满足这两个方程。
示例 2:
123输入:["b==a","a==b"]输出:true解释:我们可以指定 a = 1 且 b = 1 以满足满足这两个方程。
示例 3:
12输入:["a==b","b==c","a==c"]输出:true
示例 4:
12输 ...
基本脚本
echo 使用
123456789101112131415161718192021# 输出普通字符串echo "hello, world"# Output: hello, world# 输出含变量的字符串name=zpecho "hello, \"${name}\""# Output: hello, "zp"# 输出含换行符的字符串echo -e "YES\nNO" # Output:# YES# NO# 输出内容定向至文件echo "test" > test.txt# 输出执行结果echo `pwd`# Output: (当前目录路径)
示例脚本
123456#!/bin/zshecho "aaa,mmmmmmmm"echo -e "aaaa\naaaa"name=woshiniecho "name is ${name}"echo "$(pw ...
公共字段解析
在使用的时候,有一些字段是一直在使用的。我们为了方便会使用MyBatis-Plus 提供的注解来完成这个功能
12345678910111213/** 创建时间 *公共字段要进行加注解/ @TableField(fill = FieldFill.INSERT) // 自动填充,插入时自动填充 private LocalDateTime createTime; /** 更新时间 */ @TableField(fill = FieldFill.INSERT_UPDATE) // 自动填充,插入和更新时自动填充 private LocalDateTime updateTime; @TableField(fill = FieldFill.INSERT) // 自动填充,插入时自动填充 private Long createUser; @TableField(fill = FieldFill.INSERT_UPDATE) // 自动填充,插入和更新时自动填充 private Long updateUser;
比如这四个是经常使用的公共字段
给他们 ...
网络运维
无法访问外网的域名
应该就是dns解析出了问题
我们就要在hosts解析里进行修改
1echo "192.168.0.1 hostname" >> /etc/hosts
在文件中添加本机ip
12❯ hostnamemengnankk-linux
配置信赖的 DNS 服务器
执行 vi /etc/resolv.conf ,添加以下内容:
12nameserver 114.114.114.114nameserver 8.8.8.8
一个是国内老牌的
一个是谷歌的dns解析
然后ping一下是不是能ping通
12345678910111213141516❯ ping mengnankk.asiaPING mengnankk.asia (76.76.21.93) 56(84) bytes of data.64 bytes from 76.76.21.93 (76.76.21.93): icmp_seq=1 ttl=128 time=95.4 ms64 bytes from 76.76.21.93 (76.76.21.93): icmp_seq=2 ...
备份和恢复需要的工具
在使用虚拟机的时候我们可以使用快照进行恢复,但是在实体机的时候,我们不能使用快照
那我们就要掌握备份恢复的技术操作
dump指令和restore指令
1sudo apt-fast install dump
1sudo apt-fast install restorecond
dump
1dump [options] file
dump指令的基本语法
选项解析:
-0~-9代表存储的级别,0代表完全备份,1-9代表增量备份(增量备份就是备份上次备份修改或者增加的备份)
-f 指定备份的文件或者设备,不指定默认使用磁带
-u 显示备份更新的时间 在/etc/dumpupdates文件夹内
-v 显示详细的信息
-b 修改数据块的大小,默认是kb
-s 磁带的大小
-j 使用压缩
完全备份整个文件系统
1dump -0uf /backup/full_backup.dump /dev/sda1
增量备份
1dump -1uf /backup/full1_backup.dump /dev/sda1
不仅仅可以备份整个文件,还可以备份某个文件夹或者是文件
resto ...
树的概念
树是一个有限的集合
我们的linux文件目录就是树状的
「树」具有以下的特点:
有且仅有一个节点没有前驱节点,该节点被称为树的 「根节点(Root)」 。
除了根节点以之,每个节点有且仅有一个直接前驱节点。
包括根节点在内,每个节点可以有多个后继节点。
当 n>1n>1 时,除了根节点之外的其他节点,可分为 m(m>0)m(m>0) 个互不相交的有限集合 T1,T2,…,TmT1,T2,…,T**m,其中每一个集合本身又是一棵树,并且被称为根的 「子树(SubTree)」。
节点所含有的子树的个数就是节点的度
度为0的叫做叶子节点
度不为0的叫做分支节点
树中各节点的最大度数称为 「树的度」。
节点之间的关系
兄弟节点,孩子节点,父子节点…
节点的层次:从根节点开始定义,根为第 11 层,根的子节点为第 22 层,以此类推。
树的深度(高度):所有节点中最大的层数。例如图中树的深度为 44。
堂兄弟节点:父节点在同一层的节点互为堂兄弟。例如图中 JJ、KK 互为堂兄弟节点。
路径:树中两个节点之间所经过的节点序列。例如图中 ...
if结构
1.VQ22 判断其是否有过购买记录
现有牛客顾客购买信息表customers_info,请查询客户id并新增一列判断该客户是否有过购买记录(latest_place_order_date 1为有 0为没有)
题解:
12345select customer_id, if (latest_place_order_date, 1, 0) as if_placed_orderfrom customers_info
直接使用if语句
注意:
if语句的使用
if(condition1,0)
条件判断成功则为1,判断失败则为0
2.VQ23 请按城市对客户进行排序,如果城市为空,则按国家排序
这个题目和上一个题目共用一个表,所以我们直接写题解
题解:
1234567select customer_id, gender, city, country, age, latest_place_order_datefrom customers_infoorder by case when city is null then country ...
English
未读每日一话+单词遗忘表10.8
I have committed the worst sin of all that a man can commit. I have not been happy.
blueprint 蓝图
blur 涂上,玷污
boast 自夸
bold 大胆的
bolt 门闩
bonus 奖金
blend 混合
每日一话+单词遗忘表10.9
Man never made any material as resilient as the human spirit.
boost 促进支援
booth 货摊
blossom 开花
bay 海湾
bound 跳
boundary 分界线
每日一话+单词遗忘表10.10
今天是澳大利亚vs国足的五个小时前,能不能平啊!
A work of art must be full of adult dust before anyone can comprehend it.
bracket 支架
brag 吹牛
brake 刹车
brand 商标
brand-new 崭新的
brandy 白兰地酒
brass 黄铜
break ...
非贪婪匹配
给定一个字符串表示的数字,判断该数字末尾0的个数。例如:
"123000":3个0
"10100":2个0
"1001":0个0
可以很容易地写出该正则表达式:(\d+)(0*)
这是因为正则表达式默认使用贪婪匹配:任何一个规则,它总是尽可能多地向后匹配,因此,\d+总是会把后面的0包含进来。
12(\\d+?)(0*)
这样就代表非贪婪匹配,不会让\d少匹配,0*多匹配
1(\d??)(9*)
我们再来看这个正则表达式(\d??)(9*),注意\d?表示匹配0个或1个数字,后面第二个?表示非贪婪匹配,因此,给定字符串"9999",匹配到的两个子串分别是""和"9999",因为对于\d?来说,可以匹配1个9,也可以匹配0个9,但是因为后面的?表示非贪婪匹配,它就会尽可能少的匹配,结果是匹配了0个9
搜索和替换
使用正则表达式分割字符串可以实现更加灵活的功能。String.split()方法传入的正是正则表达式。我们来看下面的代码:
123"a ...
简介
是重要的系统信息文件,记录了重要的系统事件
一般保存在/var/log目录下
12345678910vmware-vmsvc-root.1.log.rw------- root root 4.9 KB Sat Oct 5 08:53:43 2024 vmware-vmsvc-root.2.log.rw------- root root 3.6 KB Fri Oct 4 21:03:05 2024 vmware-vmsvc-root.3.log.rw------- root root 3.4 KB Sat Oct 5 09:15:19 2024 vmware-vmsvc-root.log.rw------- root hadoop 1.1 KB Sun Sep 29 19:47:23 2024 vmware-vmtoolsd-hadoop.log.rw------- ...
简介
一个正则表达式就是一个描述规则的字符串,所以,只需要编写正确的规则,我们就可以让正则表达式引擎去判断目标字符串是否符合规则。
正则表达式是一套标准,它可以用于任何语言。Java标准库的java.util.regex包内置了正则表达式引擎,在Java程序中使用正则表达式非常简单。
举个例子:要判断用户输入的年份是否是20##年,我们先写出规则如下:
一共有4个字符,分别是:2,0,0~9任意数字,0~9任意数字。
对应的正则表达式就是:20\d\d,其中\d表示任意一个数字。
在java中就是
120\\d\\d
注意Java字符串用\\表示\。
匹配规则
正则表达式的匹配规则是从左到右按规则匹配
&
正则表达式
1a\&c
它能精确匹配字符串"a&c"
但不能匹配"ac"、"a-c"、"a&&c"等
如果想匹配非ASCII字符,例如中文,那就用\u####的十六进制表示,例如:a\u548cc匹配字符串"a和c",中文字符和的Unicode编 ...