揚帆起航,再踏征程(一)

 

(尊重勞動成果,轉載請註明出處:http://blog.csdn.net/qq_25827845/article/details/53525075 冷血之心的博客)mysql

 

 

數據結構與算法:git


一、以最少的代碼實現單鏈表反轉,須要本身建立節點。github


二、給出一個二叉樹,不能使用遞歸的方式,以二叉樹的高度輸出每一個節點的值。在此基礎上,如何在每一個高度結束以後,輸入一個換行符?
web

 

 

 


數據庫:算法


一、MongoDB數據庫的優缺點分析?sql

 

答:MongoDB面向文檔的數據庫,mysql是傳統的關係型數據庫數據庫

優勢:保證訪問速度,訪問時數據庫不會被鎖死;編程

            文檔結構的存儲方式,數據存儲在一個文檔中,更利於管理,可以更便捷的獲取數據;數組

           使用JSON風格語法,相對於SQL來講,更加直觀,容易理解和掌握;緩存

           性能優越,訪問速度快。

缺點:不支持事務操做,空間佔用大

 

 


二、SQL語句中查詢每一個年齡有幾個用戶。

 

select count(*)from table group by age

 


三、MySQL中兩種表類型MyISAM和InnoDB的區別?

  • MyISAM不支持事務,InnoDB是事務類型的存儲引擎
  • MyISAM只支持表級鎖,BDB支持頁級鎖和表級鎖,默認爲頁級鎖;而InnoDB支持行級鎖和表級鎖,默認爲行級鎖
  • MyISAM引擎不支持外鍵,InnoDB支持外鍵
  • MyISAM引擎的表在大量高併發的讀寫下會常常出現表損壞的狀況
  • 對於count( )查詢來講MyISAM更有優點
  • InnoDB是爲處理巨大數據量時的最大性能設計,它的CPU效率多是任何其它基於磁盤的關係數據庫引擎所不能匹敵的
  • MyISAM支持全文索引(FULLTEXT),InnoDB不支持
  • MyISAM引擎的表的查詢、更新、插入的效率要比InnoDB高

 

最主要的區別是:MyISAM表不支持事務、不支持行級鎖、不支持外鍵。

                             InnoDB表支持事務、支持行級鎖、支持外鍵。

 

 

排序:


一、將一個數組排序輸出。

 

答:關於排序算法,參考本博客:

「深刻理解」—選擇排序算法

「深刻理解」—交換排序算法                

「深刻理解」—插入排序算法

 

 

git:

 

一、切換分支命令?

touch README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/BrentHuang/MyRepo.git
git push -u origin master


在本地新建一個分支: git branch Branch1

切換到你的新分支: git checkout Branch1
將新分支發佈在github上: git push origin Branch1
在本地刪除一個分支: git branch -d Branch1
在github遠程端刪除一個分支: git push origin :Branch1   (分支名前的冒號表明刪除)

直接使用git pull和git push的設置

Git branch --set-upstream-to=origin/master master 
git branch --set-upstream-to=origin/ThirdParty ThirdParty
git config --global push.default matching

 

 

Spring:


一、說說Spring的核心思想。解釋IOC和AOP

 

答:Spring框架的核心就是IOC(控制反轉)和AOP(面向切面編程)

IOC:將對象間的依賴關係交給Spring容器,使用配置文件來建立所依賴的對象。

AOP:使用配置文件建立所依賴的對象後,若是你要調用該對象的方法,而且想要在方法前/後 作一些處理,如:日誌記錄,性能統

計,安全控制,事務處理,異常處理等。則能夠利用AOP實現。

        即面向切面編程將功能代碼從業務邏輯代碼中劃分出來,經過對這些行爲的分離,咱們但願能夠將它們獨立到非指導業務邏輯

的方法中,進而改變這些行爲的時候不影響業務邏輯的代碼。

 

Hibernate:


一、Hibernate有幾級緩衝?分別是什麼?有什麼區別?

 答:分爲一級緩存(事務緩存)和二級緩存(應用緩存)。一級緩存是session對象的緩存,二級緩存是一個可插拔的緩存插件,由SessionFactory控制。

區別:

默認方式不一樣:一級緩存是內置的,不可卸載(默認是打開的);二級緩存是可插拔的(默認關閉)

做用範圍不一樣:一級緩存是事務範圍的緩存;二級緩存是進程範圍或羣集範圍的緩存

適合存放的數據不一樣:二級緩存中適合存放不多被修改的數據、不是很重要的數據,容許偶爾出現併發問題的數據。

 

Struts2:


一、說說Struts2中接收請求後都發生了什麼?

 

 

項目:


哪一個項目作得最好?

 答:你猜

 

 

若是對你有幫助,記得點贊哦~歡迎你們關注個人博客,能夠加羣366533258交流討論哈~

相關文章
相關標籤/搜索