原创 111.二叉樹的最小深度

給定一個二叉樹,找出其最小深度。 最小深度是從根節點到最近葉子節點的最短路徑上的節點數量。 說明: 葉子節點是指沒有子節點的節點。 示例: 給定二叉樹 [3,9,20,null,null,15,7],     3    / \   9  

原创 面試總結

二、服務器編程 1.多線程和多進程的區別(重點 必須從cpu調度,上下文切換,數據共享,多核cup利用率,資源佔用,等等各方面回答,然後有一個問題必須會被問到:哪些東西是一個線程私有的?答案中必須包含寄存器,否則悲催)! 1)進程數據是分

原创 c 語言函數返回char **類型

char **test(char *str,int *retsize) {     int i;       char **s;     s =malloc(sizeof(char *)*10); //這裏需要*10,因爲下面使用了10個

原创 const 與define 的區別

define 1.在預處理階段,將宏定義進行展開,進行替換 2.無類型,不做類型檢查 const: 1.在定義const 變量時,需要初始化,因爲以後就不能改變了 2.對於指針來說可以指定指針爲const ,也可以指定指針所指向的內容爲c

原创 c/c++ static 關鍵字介紹

C++的static有兩種用法:面向過程程序設計中的static和麪向對象程序設計中的static。前者應用於普通變量和函數,不涉及類;後者主要說明static在類中的作用。一、面向過程設計中的static 1、靜態全局變量 在全局變量前

原创 引用和指針的區別

一:引用與指針的區別 1.引用必須在定義時初始化,指針不必 2.引用不能爲空,指針可以爲空 3.引用綁定一個變量,爲變量的別名,指針可以指向其他變量。 4.定義一個指針變量需要分配內存。引用不佔用內存 二:值傳遞,地址傳遞,引用傳遞的區別

原创 MPEG-TS報文格式

轉載https://blog.csdn.net/rootusers/article/details/42970859 MPEG-TS包頭語法結構: ·sync_byte:1B 值爲0x47。可以作爲校驗位 ·payload_unit_st

原创 RTP報文頭格式

RTP報文由報文頭和報文體組成,報文頭格式如下圖所示。 V:RTP協議的版本號,佔2位,當前協議版本號爲2。 P:填充標誌,佔1位,如果P=1,則在該報文的尾部填充一個或多個額外的八位組,它們不是有效載荷的一部分。 X:擴展標誌,佔1位,

原创 ftp文件傳輸服務

ftp包括兩種傳輸模式,主動和被動方式  主動方式: 在第1步中,客戶端的命令端口與FTP服務器的命令端口建立連接,併發送命令“PORT 1027”。然後在第2步中,FTP服務器給客戶端的命令端口返回一個"ACK"。在第3步中,FTP服

原创 關於修改mysql 的字符集後不生效的問題

使用status 查看字符集爲Latin1 將字符集修改爲utf8步驟如下 1.停止mysql,2.刪除服務 3.重新執行 顯示服務已經存在,則在任務管理器內將進程mysqld服務進程終止。找不到該進程的話,則勾選顯示所有用戶進程 

原创 mysql登錄時,ERROR 1045 (28000): 錯誤解決辦法

 首先檢查mysql服務是否啓動,若已啓動則先將其停止服務,可在開始菜單的運行,使用命令: net stop mysql  打開第一個cmd1窗口,切換到mysql的bin目錄,運行命令:   (D:\mySql\mysql-5.7.22

原创 Go 語言閉包

  代碼示例(代碼來自網上) package main import "fmt" //構造閉包 func intSeq() func() int { i := 0 return func() int {

原创 linux 命令之mount掛載

mount -t nfs 遠端 本地dictionaryumount dictionary 卸載時如果顯示device is busy則用命令查看fuser -m dictionarykill -9 PID殺掉

原创 根據字符出現頻率排序

void swap(int *a,int *b){  int tmp;  tmp =*a;  *a=*b;  *b=tmp;}void selSort(int *s,int n,char **arr,int

原创 linux 命令之查看最後一次關機時間

last -x|grep shutdown|head -1