自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

醒醒

暂定

  • 博客(92)
  • 收藏
  • 关注

原创 java基础之比较器(comparable和Comparator)

1.比较器的两种方式:内部比较器 外部比较器2.内部比较器:定义在要比较的类中,通过comparable接口进行实现 。1)定义一个Person类,具有name和age属性。2)implements Comparable接口,并重写compareTo方法3)实现compareTo方法的内部逻辑。4)写一个测试类。将Person对象添加到TreeSet中,看是否实现排序。...

2020-04-24 16:26:54 434

原创 VMware中将虚拟机的网络类型设置为NAT模式

本人的虚拟机是在VMware虚拟机软件下安装的Centos7版本。1.克隆一台虚拟机(名称:cloneVM3)2.在物理机上查看VMnet8的IP地址为10.0.0.13.从VMware虚拟机的软件中的编辑,打开“虚拟网络编辑器”4.将cloneVM3虚拟机的网络适配器设置为VMnet8(NAT模式(N)用于共享主机的IP地址)5.打开cloneVM3虚拟机,修改/etc/sysconfig/network-scripts/ifcfg-eth0配置文件的内容。IPADDR=10.0.0.1

2022-04-27 22:35:07 4317 1

原创 VMware中将虚拟机的网络类型设置为桥接模式

本人的虚拟机是在VMware虚拟机软件下安装的Centos7版本。1.克隆一台虚拟机(名称:cloneVM1)2.查看物理主机(宿主机)的网络信息(虚拟机的ip地址需要和物理主机在同一个网络,虚拟机的子网掩码和网关需要与物理主机的保持一致)在cmd命令窗口输入【ipconfig】,查看物理主机的网络信息ipv4:192.168.0.102子网掩码:255.255.255.0默认网关:192.168.0.13.查看物理主机的网卡类型4.设置VMnet0的信息5.将cloneVM1虚拟机的

2022-04-27 19:04:06 5653 2

原创 将虚拟机的网络类型设置为仅主机模式

本人的虚拟机是在VMware虚拟机软件下安装的Centos7版本。1.克隆一台虚拟机(名称:cloneVM)2.从VMware虚拟机的软件中的编辑,打开“虚拟网络编辑器”添加一个一个以太网适配器VMnet6,选择仅主机模式,并进行子网IP,子网掩码,DHCP设置。此处设置的网络为10.0.1.0/243.将cloneVM虚拟机的网络适配器设置为VMnet6(仅主机模式)4.打开cloneVM虚拟机,修改/etc/sysconfig/network-scripts/ifcfg-eth0配置文件的

2022-04-27 02:00:09 4647 2

原创 在VMware虚拟机软件下如何给一个CentOS7虚拟机添加多个网卡

1.当前主机的网卡(网络适配器)是处于NAT模式,ip地址为10.0.0.2,子网掩码为255.255.255.0.2.添加一个新的网卡,网卡处于桥接模式,网卡的ip地址应和物理主机(宿主机)的ip地址处于同一网络中,网卡的子网掩码和默认网关都应和物理主机的子网掩码和默认网关相同。1)查看物理主机的网卡类型2)查看物理主机的ip地址,子网掩码和默认网关。在cmd命令窗口中,输入【ipconfig】,查看无线局域网适配器的相关信息。物理主机的IP地址: 192.168.0.102物理主机的子

2022-04-26 20:45:08 4108 1

原创 路由表的相关知识

1.路由的分类1)是否手工配置:手工配置路由表:静态路由自动建立路由表:动态路由2)目的地址:完整的主机地址:主机路由网络地址:网络路由目的地址(0.0.0.0),子网掩码(0.0.0.0):默认路由3)出口:网卡eth0:直连路由下一跳gw网关:网关路由查找路由原则:首先根据目的IP在路由表中匹配“最长掩码匹配原则”其次再根据路由优先级选择查找路由的步骤:搜索路由表,寻找能与目的IP地址完全匹配的表项。如果找到,则把报文发送给该表项指定的下一站路由器或直接连

2022-04-25 23:18:06 956

原创 linux下桥接模式,仅主机模式和nat模式的区别

模式默认DHCP物理主机外部网络局域网桥接模式VMnet0NOYESYESYES仅主机模式VMnet1YESYESNO??nat模式VMnet8YESYESYESNO

2022-04-25 00:17:33 772

转载 linux系统下route命令的简单使用

引用:https://blog.51cto.com/dlican/3740728route可以查看linux内核的路由表信息,route命令设置的路由主要是静态路由。要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现。在linux系统中设置路由通常是为了解决以下问题:该linux系统在一个局域网中,局域网中有一个网关,能够让主机访问Internet,那么就需要将这台机器的ip地址设置为linux机器的默认路由。注意:直接在命令行下执行route命令来添加

2022-04-24 22:26:52 260

原创 linux的关机重启命令汇总

1. 关机重启命令汇总halt关机root用户halt:只关闭系统,电源还在运行halt -p:关闭系统,关闭电源(先执行halt,再执行poweroff)poweroff关机root用户poweroff会发送一个关闭电源的信号给acpireboot重启root用户shutdown-h:关机-r:重启-c:取消shutdown操作root用户shutdown实际上是调用init 0, init 0会cleanup一些工作然后调用halt或者powero

2022-04-24 20:37:06 6898

原创 /etc/rc.d/rc0.d 和 /etc/rc0.d的区别?

结论:没有区别目录/etc/rc.d下有:rc0.drc1.drc2.drc3.drc4.drc5.drc6.d目录/etc/下有rc0.d -> rc.d/rc0.drc1.d -> rc.d/rc1.drc2.d -> rc.d/rc2.drc3.d -> rc.d/rc3.drc4.d -> rc.d/rc4.drc5.d -> rc.d/rc5.drc6.d -> rc.d/rc6.d为了版本兼容的问题(由于很多不同的lin

2022-04-24 16:39:50 735

原创 在VMWARE虚拟机软件上克隆一台虚拟机,并将该台虚拟机设置成桥接模式

Step1:物理克隆Step2:网络连接设置1)在命令行界面中输入ipconfig,查看物理主机的ip地址和网关地址。ipv4:192.168.0.104子网掩码:255.255.255.0网关:192.168.0.1【后面虚拟机的ip地址需要和主机在同一个网络中】2)查看无线网络使用的网卡3)更改VMWARE虚拟软件的虚拟网络编辑器4)更改mysql-copy虚拟机的设置Step3:虚拟机设置1)打开虚拟机2)vim /etc/sysconfig/network-

2022-04-23 23:22:44 729 1

原创 安装linux图形化界面遇到的问题及解决方法

一气呵成安装linux图形化界面准备工作:查看是否安装epel-release【rpm -q epel-release】。如果没有安装,要安装【yum -y install epel-release】查看ifcfg-eth0文件文件中的DNS有没有8.8.8.8和8.8.4.4。如果没有这两个DNS,打开ifcfg-eth0文件并添加,保存并退出。【vim /etc/sysconfig/network-scripts/ifcfg-eth0】【DNS3=8.8.8.8】​【 DNS4=8.

2022-04-18 18:12:04 3752

原创 linux下使用源码包安装apache遇到的问题及解决方法汇总和总结

链接:https://pan.baidu.com/s/1pO-6h4CMUMERBAxyibHaWA提取码:0b9a链接中有:httpd-2.4.53.tar.gzapr-1.7.0.tar.gzapr-util-1.6.1.tar.gzexpat-2.0.1.tar.gz一气呵成安装(安装源码包之前,需要通过yum -y install的方式安装gcc,gcc-c++,make)将httpd-2.4.53.tar.gz,apr-1.7.0.tar.gz,apr-util-1.6.1.

2022-04-17 15:43:52 2004

原创 IDEA tomcate 进行查询数据,插入数据是出现问号???

遇到的问题:mysql,tomcate的server.xml,request,mysql连接中都设置了utf-8,但是依旧问题1:从IDEA插入数据到mysql,通过Navicat查询数据库中的数据,中文字段数据为???。问题2:通过在IDEA中查询数据(select * from user),IDEA控制台中出现的中文依旧为???。解决方法:在Navicat中,建立查询——show variables like ‘char%’;会出现很多不是utf8的选项,正是这个原因导致了???问题。将.

2021-07-15 19:54:52 715

原创 88合并两个数组

合并两个有序数组https://leetcode-cn.com/problems/merge-sorted-array/给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。你可以假设 nums1 的空间大小等于 m + n,这样它就有足够的空间保存来自 nums2 的元素。Version1:插入排序 public static void merge(int

2021-05-13 22:33:27 77

原创 114路径总和2

路径总和2https://leetcode-cn.com/problems/path-sum-ii给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。叶子节点 是指没有子节点的节点public class PathSum2 { public List<List<Integer>> pathSum(TreeNode root, int targetSum) { List<

2021-05-13 22:32:52 82

原创 112路径总和

路径总和https://leetcode-cn.com/problems/path-sum/给你二叉树的根节点 root 和一个表示目标和的整数 targetSum ,判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。叶子节点 是指没有子节点的节点public class PathSum { //定义一个静态变量,只要在递归过程中有一条路径符合,isSum就会改变为true,如果一条也没有符合的路径,将一直是false。 publ

2021-05-13 22:32:17 116

原创 98验证二叉搜索树

验证二叉搜索树https://leetcode-cn.com/problems/validate-binary-search-tree/给定一个二叉树,判断其是否是一个有效的二叉搜索树。假设一个二叉搜索树具有如下特征:节点的左子树只包含小于当前节点的数。节点的右子树只包含大于当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。Version1:递归public class BST { public boolean isValidBST(TreeNode root){

2021-05-13 22:31:47 55

原创 110平衡二叉树

平衡二叉树https://leetcode-cn.com/problems/balanced-binary-tree给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。public class BalanceTree { public boolean isBalanced(TreeNode root){ //只需返回根节点的Info类的isBalance信息即可 ret

2021-05-13 22:30:40 77

原创 207二叉树的层次遍历2

二叉树的层次遍历2https://leetcode-cn.com/problems/binary-tree-level-order-traversal-ii/给定一个二叉树,返回其节点值自底向上的层序遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)public class LevelOrder { public List<List<Integer>> levelOrderBottom(TreeNode root){ //如果root为

2021-05-13 22:29:59 58

原创 105先序中序建立一棵二叉树

先序中序建立一棵二叉树https://leetcode-cn.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/根据一棵树的前序遍历与中序遍历构造二叉树。Version1public class BuildTree { public TreeNode buildTree(int[] pre, int[] in) { //头结点为空,或者两者长度不等,都返回null。 i

2021-05-13 22:29:08 86

原创 104二叉树的深度

二叉树的深度https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。public class TreeDepth { public int maxDepth(TreeNode root) { if(root==null)return 0; //返回左子树高度和右子树高度的最大值,最大值加1为整棵树的高度。

2021-05-13 22:28:18 45

原创 101对称二叉树

对称二叉树https://leetcode-cn.com/problems/symmetric-tree/给定一个二叉树,检查它是否是镜像对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的public class SymmetricTree { public boolean isSymmetric(TreeNode root) { return isSymme(root,root); } public boolean isSymme(

2021-05-13 22:27:48 55

原创 100相同的树

相同的树https://leetcode-cn.com/problems/same-tree/给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。输入:p = [1,2,3], q = [1,2,3]输出:true输入:p = [1,2], q = [1,null,2]输出:false输入:p = [1,2,1], q = [1,1,2]输出:falsepublic class SameT

2021-05-13 22:26:59 46

原创 23多个链表合并

合并K个升序链表给你一个链表数组,每个链表都已经按升序排列。请你将所有链表合并到一个升序链表中,返回合并后的链表。输入:lists = [[1,4,5],[1,3,4],[2,6]]输出:[1,1,2,3,4,4,5,6]解释:链表数组如下:[1->4->5,1->3->4,2->6]将它们合并到一个有序链表中得到。1->1->2->3->4->4->5->6输入:lists = []输出:[]输

2021-05-13 22:26:22 386

原创 7整数翻转

整数翻转给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−2^31, 2^31 − 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)输入:x = 123输出:321输入:x = -123输出:-321输入:x = 120输出:21输入:x = 0输出:0下面图片是得到判断越界条件【rev<(Integer.MIN_VALUE/10)||rev>(Integ

2021-05-13 22:25:29 65

原创 25k个一组翻转链表

k个一组翻转链表给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。输入:head = [1,2,3,4,5], k = 2输出:[2,1,4,3,5]输入:head = [1,2,3,4,5], k = 3输出:[3,2,1,4,5]输入:head = [1,2,3,4,5], k = 1输出:[1,2,3,4,5]输入:head = [1], k

2021-05-13 22:16:13 57

原创 2021-5-6 第5天第6题

翻转链表给你单链表的头节点 head,请你反转链表,并返回反转后的链表。输入:head = [1,2,3,4,5]输出:[5,4,3,2,1]输入:head = [1,2]输出:[2,1]输入:head = []输出:[]Codepublic ListNode reverseList(ListNode head) { //last指向上一个节点 ListNode last=null; //pre指向下一个遍历的节点 ListNode pre=nu

2021-05-06 23:12:37 99

原创 2021-5-6 第五天第五题

合并两个有序链表将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。输入:l1 = [1,2,4], l2 = [1,3,4]输出:[1,1,2,3,4,4]输入:l1 = [], l2 = []输出:[]输入:l1 = [], l2 = [0]输出:[0]Code public ListNode mergeTwoLists(ListNode l1, ListNode l2) { //如果两个链表有一个为空,则返回不

2021-05-06 23:10:33 57

原创 2021-5-4 第四天第四题

寻找两个正序数组的中位数给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。输入:nums1 = [1,3], nums2 = [2]输出:2.00000解释:合并数组 = [1,2,3] ,中位数 2输入:nums1 = [1,2], nums2 = [3,4]输出:2.50000解释:合并数组 = [1,2,3,4] ,中位数 (2 + 3) / 2 = 2.5输入:nums1 = [0,0], nums

2021-05-04 20:14:45 82

原创 2021-5-3 第三天第三题

无重复字符的最长子串给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。输入: s = “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。输入: s = “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。输入: s = “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串

2021-05-03 21:21:59 68

原创 2021-5-2 第二天第二题

两数相加给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.输入:l1 = [0], l2 = [0]输出:[0]输入:l1 = [9,9,9,9,9,9,9], l2 = [9,9,9,9

2021-05-02 22:43:56 114

原创 2021-5-1 第一天第一题

两数之和给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。输入:nums = [2,7,11,15], target = 9 输出:[0,1]输入:nums = [3,2,4], target = 6 输出:[1,2]输入:nums = [3,3], target = 6 输出:[0,1]Version1下面

2021-05-02 17:52:55 135

原创 java基础之HashMap(jdk1.7)中的put()操作,源码分析

1.HashMap允许key和value都为空,HashMap是线程不安全的。HashTable中的key和value都不能为空。HashTable是线程安全的。2.HashMap中桶的概念:在jdk1.7中,HashMap是由数组和链表组成的。数组的每个索引被称作桶。3.为什么在jdk1.7中,HashMap是由数组和链表组成的?...

2020-04-30 12:03:44 712

原创 求一个数的最高的二进制位(java)

比如:输入:42 (0010 1010) 输出:32(0010 0000)假设第i位为1,1~i-1位 为0,i+1~最后一位 为0或1,表示为x.思路:1)0000 0000 01xx xxxx 变成 0000 0000 0111 11112)用0000 0000 0111 1111 - 0000 0000 0011 1111,结果=0000 0000 0100 0000...

2020-04-29 18:13:34 2421

原创 java基础之Map

1.Map存储的是一个键值对(key-value)2.在sesson、redis 、json 、HBase 中都有用到键值对。3.Map的子类:HashMap:数组+链表(1.7)数组+链表+红黑树(1.8) //Key:无序,唯一 ;Value:无序,不唯一 LinkedHashMap:链表 //有序的HashMap 可以按照插入顺序访问。 TreeMap:红黑树...

2020-04-29 16:06:10 151

原创 java面试题常问的一些知识点之间的区别?(不断更新)

1.Iterable接口和Iterator接口的区别 ?1)所有的集合类都默认实现了Iterable的接口 。Iterable接口中的方法: iterator() ,foreach() 。2)Iterator 也是一个接口,是由Iterable接口中的 iterator()返回。Iterator接口中的方法:hasNext()和next()。2.ArrayList和LinkedList...

2020-04-28 21:40:56 140

原创 Collection小结

1.Collection是集合类的一个总的接口。Collection有两个子接口:List和Set。Map是一个接口,但是不继承Collection。2.List接口的子类:ArrayList、LinkedList、Vector3.Set接口的子类:TreeSet、HashSet、LinkedHashSet。4.Map接口的子类:TreeMap、HashMap、LinkedHashM...

2020-04-28 10:37:45 132

原创 java基础之泛型(泛型类,泛型接口,泛型方法,泛型上下限)

1.泛型类:在定义类的时候,在类名的后面加上<E>。1)E只是起到占位的作用,当创建对象时,赋予真正的类型。2)E是泛型的形参,可以是一个,也可以是多个,如果是多个,用逗号隔开。3)泛型形参的命名规则,只要符合java的标识符规范就可以。但是,通常泛型形参是一个大写字母。如:E(element),K(key),V(value)。4)E可以再整个类中使用。比如:类的属性,...

2020-04-26 21:37:37 749

原创 java基础之Set及其子类

1.Set是接口,存放的是唯一、无序的数据。2.Set不可以通过下标获取对应位置的元素的值,因为无序的特点。没有get方法和set方法。3.Set的子类HashSet TreeSet LinkedHashSet3.1 HashSetHashSet底层的实现是HashMap,HashMap采用哈希表存储结构 ,哈希表就是有数组+链表组成的。数组是HashMap的主体,链表是为了...

2020-04-24 23:26:16 648

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除