原创 算法題目---------------03轉圈打印矩陣(切割矩形),正方形旋轉90度,之字型打印矩陣,行和列都排好序找數

給定左上角和右下角座標,將矩陣切割成一個個小矩形,依次遍歷輸出,注意有可能e同行或同列的情況 public static void spiralOrderPrint(int[][] matrix) { int tR = 0; i

原创 算法題目---------------01.實現一個特殊的棧,在棧的基本功能上,在實現返回棧中最小的元素

要求: pop,push,getMin操作時間複雜度爲O(1) 設計的棧類型可以使用現成的棧結構 設計兩個棧,data中不用管,只需要入棧,當data中入棧,則min中做比較, 如果min中沒有,則直接入棧, 若有則用min中的棧頂的元

原创 算法題目---------------02使用隊列實現棧,使用棧實現隊列

使用兩個隊列,往其中一個隊列進隊,假設進入N個數,那麼如果要出棧,則將N-1個數複製到另一個隊列,剩下的那個就是出棧的數   使用棧實現隊列,將數據放入一個棧,若要實現隊列的先進先出,則將所有的數據放入另一個棧,依次出棧即可 約束條件:

原创 歡聚後臺

  main方法聲明成private可以通過編譯嘛? Jvm Java爲什麼沒有全局變量 值傳遞和引用傳遞 golang 中數組切片的區別   操作系統 select poll epoll 進程線程協程區別   算法數據結構 紅黑樹  

原创 算法練習bat----------09桶排序,基數排序,計數排序

桶排序,計數排序,基數排序:不基於比較的排序,只與數據狀況有關 桶:一種數據狀況出現的詞頻,例如給定了0~60上的數組,無序,那麼如果要用桶,可以創建一個長度爲61的數組,記錄對應該數出現的次數,例如:3,5,1,1,60,那麼在創建的數

原创 算法練習bat----------10用數組結構實現大小固定的隊列和棧

1.使用數組實現大小固定的棧(使用變量index來模擬棧中的指針) public static class ArrayStack { private Integer[] arr; private Integer size;

原创 算法練習bat----------08自定義比較器

public static class Student { public String name; public int id; public int age; public Student(String name,

原创 算法題目---------------03轉圈打印矩陣(切割矩形)和正方形旋轉90度

給定左上角和右下角座標,將矩陣切割成一個個小矩形,依次遍歷輸出,注意有可能出現同行或同列的情況 public static void spiralOrderPrint(int[][] matrix) { int tR = 0;

原创 垃圾收集器和內存分配策略

程序計數器,棧和本地方法棧隨線程而滅,但是堆和方法區所需要的內存不確定,只有到程序運行期間才能指定要創建哪些對象,這部分的內存分配和回收是動態的 1.垃圾收集器在對堆進行回收時,需要確定哪些對象還“存活”, 引用計數算法(java中沒有用

原创 算法練習bat----------05快速排序和改進的快排和隨機快排

普通快排,最差情況下爲時間複雜度O(N^2) 隨機快排,最差情況下爲時間複雜度O(N*logN),最好空間複雜度O(logN),最差O(N) 原始快排:將數組最後一個變量假設爲X,小於等於X的放左邊,大於X的放右邊,然後再將拍好序的左邊和

原创 推薦博文

https://www.cnblogs.com/smyhvae/category/587723.html https://blog.csdn.net/u013980127/article/details/53913994 http://w

原创 JVM---一道面試題搞懂JVM類加載機制

有這樣一道面試題: class Singleton{ private static Singleton singleton = new Singleton(); public static int value1;

原创 JVM面試---GC是在什麼時候,對什麼東西,做了什麼事情?

這個帖子的背景是今晚看到je上這張貼:http://www.iteye.com/topic/715256,心血來潮寫下的文字,如果能拋磚引玉,能有其他面試官分析一下自己面試時問的問題,那或許是件很有意義的事情。      在公司當技術面試

原创 詳解JVM中堆、棧、方法區(對象、值)是如何調用執行的

轉載地址:http://www.cnblogs.com/dingyingsi/p/3760730.html 這兩天看了一下深入淺出JVM這本書,推薦給高級的java程序員去看,對你瞭解JAVA的底層和運行機制有 比較大的幫助。 廢話不想講

原创 算法練習bat----------06堆排序

 二叉樹可以用數組形式表示: 左孩子:2*i+1 右孩子:2*i+2 一個孩子的父節點:i-1/2 堆-----》完全二叉樹,堆可以分爲大根堆和小跟堆 大根堆:任何一個節點包括它的孩子節點,都是父節點最大 HeapInsert: 給定一