收藏 / 列表

老污的貓 - Java 爬樓梯

題目 假設你正在爬樓梯。需要 n 階你才能到達樓頂。 每次你可以爬 1 或 2 個台階。你有多少種不同的方法可以爬到樓頂呢? 原題地址 解題 每一步只能走1階或2階,因此每一步可拆分為2個分支,f(n)=f(n-1)+f(n-2) 遞歸 public static int climbStairs(int n) { if (n == 1) { return

算法 , JAVA

大廠碼農老A - 我帶的外包兄弟放棄大廠轉正,薪資翻倍入職字節

大家好,我是老A 國慶節的時候,收到一位粉絲的私信求助。一來一回聊了半天,我發現了一個很多技術兄弟的通病——我們稱之為「收藏夾式努力​」。水文看不上,只想讓大佬推薦技術寶典,一旦拿到手,焦慮感削弱,寶典就在收藏夾裏吃灰,下了班照樣峽谷開黑。當你想督促他深入研究時,他又會用「他是大佬,我不是,我做不到」來給自己設限,最終陷入「持續焦慮,持續躺平」的惡性循環。 這種惰性,是人之常情。但人和人之間

觀點 , JAVA , 程序員 , 後端 , 前端

悲傷的鴨蛋 - Maven、測試、Junit依賴

Maven的作用 管理依賴:通過pom.xml管理項目依賴的資源(jar包)。(不再需要每次都手動導入jar包) 項目構建(標準化跨平台的項目構建方式):complie,test,package,install(編譯,測試,打包,發佈)等項目構建流程 統一項目結構:提供標準、統一的項目結構(主程序,測試程序) 倉庫:用於存儲資源,管理各種jar包。 本地倉庫:自己計算機上的

junit , maven , 測試 , JAVA

打盹的猴子 - Java 設計模式:裝飾者模式(Decorator Pattern)

一、模式定義 裝飾者模式屬於結構型設計模式,允許通過動態包裝對象的方式為對象添加新功能,提供比繼承更靈活的擴展方式。該模式通過組合替代繼承,遵循開閉原則(對擴展開放,對修改關閉)。 二、核心角色 Component(組件接口) 定義被裝飾對象的公共接口 ConcreteComponent(具體組件) 實現基礎功能的具體類 Dec

裝飾者模式 , 設計模式 , JAVA

牛肉燒烤屋 - 超時時間應該設置多長?長尾請求和重試風暴又該如何解決?打造高效穩定的網絡請求!

超時時間 概念 超時時間指系統在等待某個操作響應時設定的最大容忍時間閾值。當操作未在指定時間內完成,系統將主動終止等待並觸發預設處理邏輯 超時可以看做是一種降級手段。因為假設服務永遠能正常運行,我們並不需要超時時間,來保證服務的可用性和穩定性 常見需要依賴超時時間的場景 網絡層:TCP 協議的 connect timeout(Linux 默認 120 秒)、HTTP 請求的 socket ti

微服務 , rpc , 高可用 , 計算機網絡 , 後端

seazhan - 【RocketMQ 消息中間件】RocketMQ篇之-消息存儲 為什麼性能高 CommitLog 刷盤機制 同步 異步

RocketMQ篇之-消息存儲 RocketMQ作為一款分佈式消息中間件,高可靠性是其最重要的特性之一。 所以需要將消息進行持久化存儲,以保證消息不丟失。 RocketMQ的消息存儲是RocketMQ的核心組件之一,負責消息的存儲和傳輸。RocketMQ的消息存儲主要包括CommitLog、ConsumeQueue、IndexFile、Checkpoint等幾個部分。 (前置)消息存儲交互流

中間件 , JAVA , 消息隊列

王中陽講編程 - 某訊一面,有點難度

今天分享的是訓練營的朋友在某訊外包的面經,他在面完後跟我説:數據一致性策略好久沒問,有點忘了,所以這一塊答的不太好。 我一直都會和大家強調複習的重要性,尤其是這種常見的問題。看看下面的問題你都能答得上來嗎? 基礎部分 - MYSQL和Redis 一、MySQL索引分類 普通索引(INDEX) 這是最基本的索引類型,它沒有任何限制。它可以創建在任何數據類型的列上,主要目的是加

緩存 , 數據庫 , 後端

字節幺零二四 - 算法典型例題:N皇后問題,五種解法,逐步優化(非遞歸版)

本文將介紹N皇后問題的五種解法,包括樸素回溯法、對稱優化、標記優化、可用優化、位運算優化,對於每種解題思路,提供相應的非遞歸版代碼實現,最後將對每種解法進行測試,橫向對比每種解法的求解時間。 題目描述 在 N×N 格的國際象棋上擺放 N 個皇后,使其不能互相攻擊,即任意兩個皇后都不能處於同一行、同一列或同一斜線上,問有多少種擺法? 回溯法 解題思路 回溯法採用深度有限的搜索策略遍歷問題的解空間樹,

遞歸 , 算法 , 回溯法

Awbeci - Seaurl-分享一個雲上網址收藏網站

前言 最近網上發現一個強大的網址收藏網站,點擊這裏打開,分享給大家,希望大家會喜歡。 網址空間 "網址空間"是一個專業的在線平台,它允許用户分享他們在日常生活和工作中頻繁訪問的網站鏈接。此外,該平台還提供了社交功能,使用户能夠查看並探索他們的朋友們所添加的網站鏈接,從而增強信息共享和網絡資源的發現。 當你添加網址時候,它會自動帶出標題和描述,非常方便。 它還提供了快捷工具功能,上面列出

網址 , url

lindsay_bubble - Leetcode 85_maximal_rectangle_最大矩形

一、棧 承接Leetcode 84,柱狀圖算最大矩形面積,把該題入參改為柱狀圖高度即可 PS:這版本手搓int[]做棧和直接用ArrayDeque做棧,結果僅差2ms;但題84相差近15ms。 public int maximalRectangle(char[][] matrix) { if (matrix.length == 0) {

leetcode , , JAVA

wasdquiop - Linux服務器ARM架構安裝Mysql(aarch64)

一、卸載舊版本 查詢是否存在舊版本 rpm -qa | grep mysql rpm -qa | grep mariadb 如果存在,挨個刪除已有版本: yum -y remove 版本 查看etc/目錄下是否存在my.cnf文件 ls etc/my.cnf # 刪除 rm my.cnf 卸載MySQL後殘留數據保存路徑 find / -name mysql # 刪除 rm -rf 查找的路徑名

MySQL , arm64 , arm , centos7 , Linux

Java陳序員 - 滴滴開源!一套輕量安全的問卷調研系統!

大家好,我是 Java陳序員。 之前給大家介紹了兩款開源的問卷調查系統。 太捲了!這個考試系統不愧是“卷王”! 填鴨表單!開箱即用的開源問卷調查系統! 今天,再給大家安利一套輕量安全的問卷調研系統,由滴滴開源! 關注微信公眾號:【Java陳序員】,獲取開源項目分享、AI副業分享、超200本經典計算機電子書籍等。 項目介紹 xiaoju-survey —— 一套滴滴開源、輕量安全的問卷調研系統

vue.js , github , mongodb , next.js

呀哈哈kk - 【詳解】Kali安裝BCM43142802.11b/g/nLinux驅動

Kali安裝BCM43142802.11b/g/n Linux驅動 在使用Kali Linux時,有時會遇到無線網卡驅動不兼容的問題。本文將詳細介紹如何在Kali Linux上安裝Broadcom BCM43142 802.11b/g/n的Linux驅動。 環境準備 操作系統:Kali Linux 2023.1 硬件:帶有BCM43142無線網

驅動程序 , 加載 , 無線網卡 , 後端開發 , JAVA

wayn - Spring Security權限控制框架使用指南

在常用的後台管理系統中,通常都會有訪問權限控制的需求,用於限制不同人員對於接口的訪問能力,如果用户不具備指定的權限,則不能訪問某些接口。 本文將用 waynboot-mall 項目舉例,給大家介紹常見後管系統如何引入權限控制框架 Spring Security。大綱如下, 一、什麼是 Spring Security Spring Security 是一個基於 Spring 框架的開源項目,旨在為

權限控制 , springsecurity , springboot , JAVA , spring-security

mob64ca13fe62db - accessible: module jdk.compiler does not “opens com.sun.tools.javac.processing“ to unnamed module_qq

處理“module jdk.compiler does not “以” com.sun.tools.javac.processing” to unnamed module”錯誤的終極指南 開發過程中遇到這個討厭的錯誤,讓你抓耳撓腮嗎?別擔心,你並不孤單。這個錯誤往往源於JDK項目版本與Maven編譯版本的不一致。本文將深入探討這個錯誤,並提供詳細的分步指南,幫助你輕鬆解決它

新版本 , JAVA , ci , 前端開發 , Javascript

journey - YARN中Service組合模式

1、實例 1.1、定義一個Service接口 public interface Service { void init(Configuration config); void start(); void stop(); } 1.2、定義一個AbstractService抽象類 public abstract class AbstractService implements

組合模式 , yarn

mb61c46a7ab1eee - 策略模式詳情 - 實踐

策略模式:定義一組算法,將每個算法封裝起來,使它們可以互相替換,且算法的變換不會影響使用算法的客户。 • 抽象策略(Strategy)類:這是一個抽象角色,通常由一個接口或抽象類實現。此角色給出所有的具體策略類所需的接口。 • 具體策略(Concrete Strategy)類:實現了抽象策略定義的接口,提供具體的算法實現或行為。

System , 封裝 , MySQL , 數據庫 , 策略模式

CodePulse代碼脈搏 - 實時代碼分析與智能指導

基於Python開發一個智能編程學習助手,專注於代碼分析和實時指導。 核心功能設計 # ai_coding_tutor.py import ast import inspect from typing import Dict, List, Optional from dataclasses import dataclass from pathlib impo

後端開發 , JAVA , HTML , Json , Python

sangwu - 70. 爬樓梯

70. 爬樓梯 假設你正在爬樓梯。需要n階你才能到達樓頂。 每次你可以爬1或2個台階。你有多少種不同的方法可以爬到樓頂呢? 示例 1: 輸入:n = 2 輸出:2 解釋:有兩種方法可以爬到樓頂。 1. 1 階 + 1 階 2. 2 階 示例 2: 輸入:n = 3 輸出:3 解釋:有三種方法可以爬到樓頂。 1

狀態轉移 , 數組 , yyds乾貨盤點 , i++ , 後端開發 , JAVA

虎斑嘟嘟 - 零知識證明與深度學習:打造可驗證的AI推理新時代

零知識證明與深度學習:打造可驗證的AI推理新時代 在醫療、金融和自動駕駛等關鍵領域,人工智能系統正日益成為決策的核心。然而,這些“黑箱”模型如何讓人信任?當AI告訴你不應該批准貸款或患有癌症時,你如何知道這個決策是基於正確的推理,而不是被惡意篡改或包含了偏見? 傳統方法要求完全透明公開模型參數和輸入數據,但這在保護知識產權和用户隱私方面面臨巨大挑戰。 零知識證明

yyds乾貨盤點 , 數據 , 後端開發 , JAVA , ci , 零知識證明

Turbo_K - ThreadLocal有什麼缺點?

ThreadLocal 是 Java 中一個用於為每個線程提供獨立變量副本的類,它允許每個線程都能獨立地訪問和修改變量,避免了多線程間的競爭和同步問題。它是通過在每個線程中維護一個 線程局部變量 來實現的,通常用於線程間的數據隔離。 然而,ThreadLocal 並不是完美的,它有一些缺點和潛在的問題,特別是在多線程和資源管理方面。以下是 ThreadLocal 的一些主要

線程池 , 後端開發 , 多線程 , JAVA , 解決方案

自由的瘋 - 《單元測試與Mock:保證代碼質量(十四)》

單元測試是確保代碼質量的核心手段,通過隔離測試目標代碼(System Under Test, SUT),驗證其邏輯正確性。結合Mock框架(如Moq)可以模擬外部依賴,使測試更可控、更高效。 1. xUnit/NUnit基礎:單元測試框架 1.1 xUnit與NUnit對比

List , Test , Stack , yyds乾貨盤點 , c++ , 後端開發 , c

小風箏 - 對敏感操作的二次認證 —— 詳解 Sa-Token 二級認證

一、需求分析 在某些敏感操作下,我們需要對已登錄的會話進行二次驗證。 比如代碼託管平台的倉庫刪除操作,儘管我們已經登錄了賬號,當我們點擊 [刪除] 按鈕時,還是需要再次輸入一遍密碼,這麼做主要為了兩點: 保證操作者是當前賬號本人。 增加操作步驟,防止誤刪除重要數據。 這就是我們本篇要講的 —— 二級認證,即:在已登錄會話的基礎上,進行再次驗證,提高會話的安全性。 Sa-Token 是一

sa-token , 權限控制 , spring , springboot , JAVA

wx661607c93692e - Java 圖片縮略圖工具類

一、核心需求分析 我們希望工具類支持兩種主流模式: 模式 1:等比縮放(Fit) 在不超過目標寬高的前提下,按原圖比例縮放,空白處留白或透明。 適用:商品圖、文章封面預覽。 模式 2:中心裁剪(Crop) 先等比縮放使圖像覆蓋整個目標區域,再從中心裁剪出指定尺寸。 適用:用户頭像

縮放 , 後端開發 , JAVA , Image