原创 刪除鏈表所有值爲val的節點

題目 https://leetcode-cn.com/problems/remove-linked-list-elements/submissions/ 思路就是哨兵模式 以及moveHead的使用 public ListNod

原创 遞歸的求和

//這種標記長度的方式 和求全排練的方式很像 //遞歸的求和 public int sum(int[] arr){ if(arr==null||arr.length==0){

原创 返回數組的所有元素的倆倆組合

public static void main(String[] args) { List<Integer> list = new ArrayList<>(); list.add(1); list.add(2);

原创 查找最後一個盒子裝多少雞蛋

有N個雞蛋,要依次投放到如下盒子中(盒子數未知,直至全部放入爲止), 【1】,【2】,【4】,【8】,【16】。。。。【?】 請問,已知n個雞蛋,最後一個 盒子有多少個雞蛋? public static int lastBo

原创 劍指offer40. 最小的k個數

題目 https://leetcode-cn.com/problems/zui-xiao-de-kge-shu-lcof/ 思路分析 典型的topk問題 方法一 全部排序後輸出 public int[] getLeastNumb

原创 返回倆個集合的元素組合

public static void main(String[] args) { List list1 = new ArrayList(); List list2 = new ArrayList(); list1.

原创 java 多線程求和的幾種實現方式。

前情提要 通過本文你可以收穫 通過多線程計數求和了解synchronized的應用場景,以及其他加鎖方式爲什麼不生效 框架 對象鎖和類鎖 1、同一時刻只有一個線程執行這段代碼 2、最基本的互斥同步手段 3、分類 一共有倆種鎖:

原创 秒殺如何解決超賣

https://www.cnblogs.com/wenbochang/p/10912459.html 1、 使用數據庫的排他鎖 2、使用version 3、使用redis的單線程。

原创 單例的幾點概念。

1、構造函數必須設置爲private 避免被new 出來,只能通過暴露的方法獲取實例 2、懶漢和惡漢 懶漢就是用的時候才加載 double check public class SingletonWithDoubleChecke

原创 sql查找根部節點

1、有樹節點表如下(樹的高度不定): CREATE TABLE `node` ( `id` BIGINT PRIMARY KEY AUTO_INCREMENT, `name` VARCHAR(32) NOT NULL, `p

原创 尋找平衡點的倆種方法

o(n2)和o(n) //時間複雜度是n static void equPoint2(){ int[] arr = {2,3,4,5,8,5,9}; int leftSum = arr[0]

原创 SaaS架構中多租戶的概念

租戶可以理解爲部署在雲端的客戶,通常出現在2B的企業中,比如現在學校的一卡通管理,通常是一個公司來做的,學校本地不需要做任何部署,而這個公司又是服務了很多個學校,那麼學校對於公司來說就是一個租戶。 SaaS多租戶架構一共有三種 1

原创 大文件上傳需要注意的若干問題

爲了防止大文件上傳到一半失敗,或者超大文件內存溢出的問題要分片, 如何實現進度條? 方案一、瀏覽器應該可以記錄傳了多少流量,以此來計算, 方案二、可以計算上傳了多少分片, 如何實現秒傳 md5對比 如何實現斷點續傳 前端使用 lo

原创 linkedhashmap 爲什麼有序

https://segmentfault.com/a/1190000012964859 從這個文章來分析就是維護了雙向鏈表 問題 這個變量爲什麼可以沒有初始化 **