原创 層序遍歷時劃分每層-Leetcode 429. N叉樹的層序遍歷-java版

概述 如何在層序遍歷n叉樹時,將每層元素分開?本文通過廣度優先搜索(BFS)的方式解決這個問題。其實DFS也是可以的。 題目 給定一個 N 叉樹,返回其節點值的層序遍歷。 (即從左到右,逐層遍歷)。 例如,給定一個3叉樹:

原创 全面介紹Linux下tcpdump的使用

1. 概述 本文將介紹tcpdump的大部分選項及其表達式的具體用法 tcpdump是Linux上的網絡抓包工具,可以監視所有經過網卡的流量包。 tcpdump的命令格式爲tcpdump options expression,通過

原创 shell編程入門詳解--從基礎到調試

1. 變量 1.1 變量定義 a=1 : 直接賦值即可定義普通變量 declare n : 定義普通變量 declare -i n : 定義數值變量 readonly n : 定義只讀變量 export n : 定義環境變量(環

原创 記Hadoop3.1.2安裝排錯之ERROR: Cannot set priority of datanode process

問題 在安裝Hadoop過程中,對hdfs格式化(# $HADOOP_HOME/bin/hdfs namenode -format)之後,開始啓動hdfs(# $HADOOP_HOME/sbin/start-dfs.sh)時,總是

原创 Linux Shell多線程編程之wait

一、& 介紹 sleep 10 #等待10秒,再繼續下一操作 sleep 10 & #當前shell不等待,後臺子shell等待 使用&命令後,作業被提交到後臺異步運行,當前控制檯沒有被佔用,但是一但把當前控制檯關掉(退出帳戶時

原创 深入解析Java泛型通配符類型

概述 在Java中,通配符類型List<?>等價於List<? extends Object>,List<? extends Animal>則代表其可以被賦值爲List或List等其子類,List<? super Cat>代表其可以被

原创 Linux shell中的特殊變量

在Bash中有些變量比較特殊,會隨情況而變: $_ 是上個命令的最後一個參數 $? 上個命令的退出狀態,或函數的返回值 $! 最近一個後臺命令的PID $n傳遞給腳本或函數的參數。n是一個數字,表示第幾個參數。例如,第一個參數是$

原创 java11使用VisualVm配置遠程Jstatd與JMX連接

VisualVm是官方提供的JVM監控工具,能夠監控線程,內存情況,查看方法的CPU時間和內存中的對象,已被GC的對象,GC活動,反向查看分配的堆棧等等,值得我們去學習。 1.Jstatd: 1.1配置jstatd.policy 在j

原创 【雜】手機訪問電腦開發的網站——通過Chrome DevTools

手機訪問電腦開發的網站 方法一: 我使用的是Chrome70 手機安裝Chrome瀏覽器(應該要用安卓手機,並且開啓開發者模式中的調試功能) 電腦端用Chrome打開網址:chrome://inspect/#devices,如圖

原创 JDBC數據庫驅動註冊與Connection獲取源碼分析

源碼分析: 這是Mysql 8.x版的java驅動部分源碼 package com.mysql.cj.jdbc; import java.sql.SQLException; public class Driver extends

原创 Java正確實現單例模式

當不用考慮線程安全時,使用傳統方法可以很容易解決,這裏我們在考慮線程安全性的情況下實現單例模式 1. 雙檢鎖 這是懶加載方式 public class Singleton { private static volatile

原创 提前代碼優化的教訓

總是想着寫高性能代碼,但是對於一個項目而言,一開始就特別注重高性能代碼往往會: 1.大大提高代碼量 2.增加寫代碼難度 3.Bug率飆升 4.項目完成時間大幅增加 比如對於現在這個用Netty寫個服務器的項目,本來如果用Http協議就

原创 java項目模板-Mybatis

mybatis-config.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//D

原创 java項目模板-Netty

gradle implementation 'io.netty:netty-all:4.1.31.Final' 常用服務端輔助代碼: import io.netty.bootstrap.ServerBootstrap

原创 java項目模板-log4j

log4j.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configuration PUBLIC "-//APACHE//DTD LOG4J 1.2//EN