原创 數據結構-----優先級隊列(堆)

一、PriorityQueue 的使用 概念 隊列是一種先進先出(FIFO)的數據結構,但有時候,數據可能帶有優先級,出隊列時,可能需要優先級高的元素先出隊列,在這種情況下,使用隊列顯然不合適,比如:在手機上玩遊戲的時候,如果有

原创 遞歸的概念與用法

●遞歸的概念 1、遞歸就是方法自己調用自己,每次調用時傳入不同的變量。 2、遞歸有助於編程者解決複雜的問題,同時可以讓代碼變得簡潔。 ●遞歸的調用規則 1、當程序執行到一個方法時,就會開闢一個獨立的空間(棧)。 2、每個空間的數據

原创 【數據結構+算法】遞歸-----八皇后問題(分析與實現)

一、八皇后問題描述 八皇后問題,是一一個古老而著名的問題,是回溯算法的典型案例。該問題是國際西洋棋棋手馬克斯.貝瑟爾於1848年提出 : 在8X8格的國際象棋上擺放八個皇后,使其不能互相攻擊,即:任意兩個皇后都不能處於同一行、同一

原创 什麼是稀疏數組sparsearry?怎麼用?

當一個數組中大部分元素爲0,或者爲同一個值的數組時,可以使用稀疏數組來保存該數組。 1、稀疏數組的處理方法: (1)、記錄數組一共有幾行幾列,有多少個不同的值; (2)、把具有不同值的元素的行列及值記錄在一個小規模的數組中,從而縮

原创 【數據結構+算法】隊列——用數組實現環形隊列

在我上一個博客中,我們提到數組實現隊列時,不能實現代碼的複用,優化方法是可以改成一個環形的數組(進行取餘)。所以本次我將總結如何用數組實現環形隊列。 思路: 1、對front變量進行一個調整:front指向隊列的第一個元素,即ar

原创 leetcode 225. 用隊列實現棧(詳細分析)

使用隊列實現棧的下列操作: push(x) – 元素 x 入棧 pop() – 移除棧頂元素 top() – 獲取棧頂元素 empty() – 返回棧是否爲空 注意: 1.你只能使用隊列的基本操作-- 也就是 push to ba

原创 二叉樹習題彙總(leetcode基礎面試題)

144. 二叉樹的前序遍歷: 鏈接:https://leetcode-cn.com/problems/binary-tree-preorder-traversal/ 給定一個二叉樹,返回它的 前序 遍歷。 示例: 輸入: [1,n

原创 快速排序的詳細分析、代碼實現以及如何優化(Java)

一、原理 從區間中取一個數據作爲基準值,按照基準值將區間劃分爲左右兩部分,其中左半部分的數據 < 基準值,右半部分的數據>基準值; 按照快排的思想排左半部分; 按快排的思想排右半部分; 類似於二叉樹前序遍歷的框架: pub

原创 【內部類】【概念、分類、用法】

一、概念: 一個類是用來模擬一個事務的,如果一個事務的內部包含另一個事務,那麼這就是一個類內部包含另一個事務的。例如:身體和心臟,汽車和發動機。 二、分類 1、成員內部類 (1)定義 修飾符 class 外部類名稱{ 修飾

原创 數據結構:二叉樹的非遞歸遍歷--詳細分析與實現

假設有如圖所示的一棵二叉樹,我們分別對其前序、中序、後序以及層序進行非遞歸遍歷。 前提:二叉樹採用孩子表示法 class Node { Node left = null;//指向左子樹 Node right

原创 leetcode-構造二叉樹(分析與實現)

題型一:105. 從前序與中序遍歷序列構造二叉樹 根據一棵樹的前序遍歷與中序遍歷構造二叉樹。 注意: 你可以假設樹中沒有重複的元素。 例如,給出 前序遍歷 preorder = [3,9,20,15,7] 中序遍歷 inorder

原创 【繼承】【羣主發紅包案例】

一、題目要求: 羣主發普通紅包。某羣有多名成員,羣主給成員發普通紅包。普通紅包的規則: ①.羣主的- -筆金額, 從羣主餘額中扣除,平均分成n等份,讓成員領取。 ②.成員領取紅包後,保存到成員餘額中。 請根據描述,完成案例中所有類

原创 一些熟悉常用的html標籤

一、概念: Hyper Text Markup Language 超文本標記語營 是最基礎的網頁開發語 超文本:用超鏈接的方法,將各種不同空間的文字信息組織在一起的網狀文本。 標記語言:由標籤構成的語言。 <標籤名稱>如html

原创 【筆記本USB接口】【接口多態的綜合案例】

【基礎介紹】 筆記本電腦(laptop) 通常具備使用USB設備的功能。定義USB接口,具備最基本的開啓功能和關閉功能。鼠標和鍵盤要想能在電腦上使用,那麼鼠標和鍵盤也必須遵守USB規範,實現USB接口,否則鼠標和鍵盤的生產出來也無

原创 數據庫——JDBC

一、概念: Java DataBase Connectivity Java數據庫連接, Java語言操作數據庫 它是Java中的數據庫連接規範。這個API由java.sql.* , javax.sql.* 包中的一些類和接口組