原创 leetcode ---20. 有效的括號

給定一個只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判斷字符串是否有效。 有效字符串需滿足: 左括號必須用相同類型的右括號閉合。 左括號必須以正確的順序閉合。 注意空字符串可被認爲是有效字符串。 示例1:

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

鏈接:https://leetcode-cn.com/problems/implement-queue-using-stacks 使用棧實現隊列的下列操作: push(x) – 將一個元素放入隊列的尾部。 pop() – 從隊列首

原创 【Java】String類(比較/查找/替換/拆分/截取/轉換等)

一、常見的構造 String 的方式 //方式一 String str = "Hello Bit"; //方式二 String str2 = new String("Hello Bit"); //方式三 char[] arr

原创 遞歸之迷宮回溯問題(分析與實現)

迷宮問題: 如圖,迷宮大小爲8行7列。紅色區爲牆,藍色小球只能在白色區域走動 。 具體說明: 1、map 表示迷宮; 2、i、j 表示從迷宮的哪個位置開始出發(假設從1,1出發); 3、如果小球能到 map[6] [5] 的位置

原创 合併兩個有序的單鏈表【單鏈表】【Java】

public static ListNode mergeTwoLists( ListNode headA,ListNode headB) { ListNode node= new ListNode

原创 leetcode------905. 按奇偶排序數組

給定一個非負整數數組 A,返回一個數組,在該數組中, A 的所有偶數元素之後跟着所有奇數元素。 你可以返回滿足此條件的任何數組作爲答案. 示例 輸入:[3,1,2,4] 輸出:[2,4,3,1] 輸出 [4,2,3,1],[2,4

原创 leetcode --- 27. 移除元素(數組)

27. 移除元素 給定一個數組 nums 和一個值 val,你需要原地移除所有數值等於 val 的元素,返回移除後數組的新長度。 不要使用額外的數組空間,你必須在原地修改輸入數組並在使用 O(1) 額外空間的條件下完成。 元素的順

原创 【藍橋杯】 【 基礎練習】 【數列排序】

問題描述   給定一個長度爲n的數列,將這個數列按從小到大的順序排列。1<=n<=200 輸入格式   第一行爲一個整數n。   第二行包含n個整數,爲待排序的數,每個整數的絕對值小於10000。 輸出格式   輸出一行,按從小到

原创 用數組實現棧(數據結構與算法)

一、棧的介紹 (1)、棧的英文爲(stack)。 (2)、棧是一個先進後出(FILO-First In Last Out)的有序列表。 (3)、棧(stack)是限 制線性表中元素的插入和刪除只能在線性表的同一端進行的一種特殊線性

原创 【JAVA+數據結構+算法】鏈表——單鏈表

一、鏈表的基本介紹 1、鏈表是以節點形式來存儲; 2、每個節點包含data域和next域(指向下一個節點); 3、鏈表的各個節點不一定是連續存儲,如圖所示的單鏈表(在內存中的存儲): 4、鏈表分爲帶頭結點的鏈表和沒有頭結點的鏈表

原创 數據結構與算法:中綴表達式轉後綴表達式

步驟: 1、初始化兩個棧:運算符棧s1和儲存中間結果的棧s2; 2、從左至右掃描中綴表達式; 3、遇到操作數時,將其壓s2; 4、遇到運算符時,比較其與s1棧頂運算符的優先級: (1)、如果s1爲空,或棧頂運算符爲左括號“(",則

原创 數據結構棧之中綴表達式求值(實現計算器綜合計算)

一、思路分析: 1、通過一個index值(索引),來遍歷我們的表達式。 2、如果我們發現是一個數字,就直接入數棧。 3、如果發現掃描到是一個符號,就分如下情況: (1)、如果發現當前的符號棧爲空,就直接入棧。 (2)、如果符號棧有

原创 【數據結構+算法】環形鏈表——約瑟夫環(Josephu)問題

一、約瑟夫環問題描述 ➢設編號爲1, 2,…n的n個人圍坐一 圈,約定編號爲k (1<=k<=n) 的人從1開始報數,數到m的那個人出列,它的下一位又從1開始報數,數到m的那個人又出列,依次類推,直到所有人出列爲止,由此產生一個出

原创 前綴、中綴、後綴表達式(逆波蘭表達式分析與實現)

一、前綴表達式 從右至左掃描表達式: 1、遇到數字時,將數字壓入堆棧; 2、遇到運算符時,彈出棧頂的兩個數,用運算符對它們做相應的計算(棧項元素和次頂元素),並將結果入棧; 3、重複上述過程直到表達式最左端,最後運算得出的值即爲表

原创 【數據結構】用數組實現隊列(分析與實現)

一、隊列的基礎介紹 1、隊列可用數組(順序存儲結構)或鏈表(鏈式存儲結構)來實現; 2、遵循先入先出原則; 3、示意圖: 二、用數組實現隊列 1、隊列本身是有序列表,若使用數組的結構來存儲隊列的數據,則隊列數組的聲明如上圖,其中