原创 0099 經典算法系列——線段樹

  LeetCode 307 class NumArray { int[] sum; int size; int[] nums; public NumArray(int[] nums) {

原创 0081 插入排序簡單分析

package sort; public class InsertSorting { public static void insertSort(int[] nums){ if (null == nums ||

原创 0079 選擇排序的“醜陋”

public class SelectSorting { public static void selectSort(int[] nums){ if (null == nums || nums.length <

原创 0094 HDFS架構、讀寫過程詳解、運維

HDFS的架構? HDFS採用Master-Slave 架構,分爲4部分: HDFS Client:HDFS客戶端,通過與 NameNode和DataNode 交互訪問HDFS中的文件 NameNode:NameNode是一箇

原创 0095 經典算法系列——並查集(Union-Find)

概念TODO UF的標準模板 算法實戰 等式方程的可滿足性(medium) 朋友圈(medium) 最長連續序列(hard) 下面將介紹以上題目的實現: 等式方程的可滿足性(medium) 分析: List item

原创 0083 不用比較元素大小也能排序——計數排序算法實現與分析

package sort; public class CountSorting { public static void countSort(int[] nums){ if (null == nums || n

原创 0085 java面試高頻問題彙總

Java基礎: 1.JDK 和 JRE 有什麼區別? 面向人羣不同: JDK是面向開發人員的,包括java運行時環境(JRE)和一些基礎庫函數;JRE是面向java程序使用者的,即要運行java程序,就得用到JRE; 安裝不同:

原创 0092 經典算法系列——泛洪填充(FloodFill)

泛洪填充(FloodFill)問題在圖像處理中非常常用,它和連通圖的概念相似。最近在YouTube看 Patrick Shyu (TechLead)的視頻,他講他在谷歌面試別人的時候,常會出一道泛洪填充的題。 1、泛洪填充——圖像

原创 0080 分治法思想下的快速排序算法

public class QuickSorting { public static void quickSort(int[] nums, int start, int end){ if (start > end)

原创 0078 冒泡排序算法分析

//假設升序排序 public class BubbleSorting {     public static void bubbleSort(int[] nums){         if (null == nums || nums.

原创 0098 系統設計——Instagram設計

設計Instagram 讓我們設計一個像Instagram這樣的照片共享服務,用戶可以在其中上傳照片以與其他用戶共享。類似服務:Flickr,Picasa難度級別:中 1.什麼是Instagram?# Instagram是一項社交

原创 0097 系統設計——常見系統設計及知識範圍

系統設計入門 翻譯自:源地址 目的 學習如何設計大型系統。 爲系統設計的面試做準備。 學習如何設計大型系統 學習如何設計可擴展的系統將會有助於你成爲一個更好的工程師。 系統設計是一個很寬泛的話題。在互聯網上,關於系統設計原則的

原创 0096 經典算法系列——回溯法

回溯法有模板: result = [] def backtrack(路徑, 選擇列表):     if 滿足結束條件:         result.add(路徑)         return for 選擇 in 選擇列表:    

原创 0082 分治法實現歸併排序

package sort; public class MergeSorting { public static void mergeSort(int[] nums, int start, int end){ i

原创 0093 泛洪填充之島嶼問題

泛洪填充常見於島嶼問題: 1254.統計封閉島嶼的數目 694.不同的島嶼數 200.島嶼問題 解法三種:DFS,BSF,並查集 下面以200.島嶼問題解析泛洪填充的過程,題目描述: 給你一個由 ‘1’(陸地)和 ‘