原创 二叉樹-判斷一個樹是否包含另一個樹

1.題目: 給定兩個非空二叉樹 s 和 t,檢驗 s 中是否包含和 t 具有相同結構和節點值的子樹。s 的一個子樹包括 s 的一個節點和這個節點的所有子孫。s 也可以看做它自身的一棵子樹 2.題目分析: 前提:S樹不能爲空 (1)返回tr

原创 網絡-TCP/IP的四層模型

TCP/IP四層模型中的典型協議解析以及特性講解 1.應用層 負責應用程序之間的數據傳輸 知名協議: HTTP協議 (超文本傳輸協議) 網址-URL (統一資源定位符) http://user:[email protected]:80

原创 二叉樹上的三顆栗子-前序遍歷

栗子1: 1.題目: 給定一個二叉樹返回它的前序遍歷 2.題目分析: 二叉樹的前序遍歷:根節點+左子樹+右子樹 3.程序設計: 採用遞歸的方法 4.源代碼 //節點類 public class TreeNode { int

原创 JVM基礎概念整理

JVM JVM簡介 虛擬機:通過軟件模擬的具有完整硬件功能的、運行在一個完全隔離環境中的完整的計算機系統。 JVM:通過軟件模擬Java字節碼的指令集,JVM中只保留了PC寄存器 內存區域與內存溢出異常 1.運行時數據區域 線程

原创 leetcode01-最大子序和

1.題目描述: 給定一個整數數組nums,找到一個具有最大和的連續子數組(子數組最少包含一個元素),返回其最大和; 2.來源: https://leetcode-cn.com/problems/maximum-subarray/ 3.編

原创 挑戰七大排序算法-03選擇排序

選擇排序算法的實現思路類似於插入排序,即已排序區間+未排序區間 1.算法定義 選擇排序是基於選擇的排序,即每次需要選擇元素進行排序 2.算法思想 (1)第一次從待排序的數據元素中選出最小(或最大)的一個元素,存放在序列的起始位置 (2)然

原创 原生python實現KNN分類算法

一.題目 原生python實現knn分類算法 二.算法設計 1.KNN算法介紹 (1)定義 KNN算法可以說是最簡單的分類算法,也是最常用的算法之一。KNN全稱K Nearest Neighbors,意思是K個最近的鄰居,其原理就是當預測

原创 TreeSet有序和無重複值特性的內部原理剖析

此篇用以致敬:那些年,我們一起學過的TreeSet。 相信很多學過Java的小孩子們,都知道TreeSet有兩大特性:來,大聲喊出來 一、有序;二、值唯一 一、寫作背景 有木有感覺好高大 在最初我們學習集合框架時,Collection接口

原创 測試篇----測試管理

測試管理 1.測試策略制定 1.1測試需求 1.1.1完整的需求文檔 (1)功能需求 (2)非功能性需求 (3)性能測試 (4)安全性需求 (5)擴展性需求 (6)可靠性需求 (7)可移植性需求 (8)易用性需求 (9)兼容性需求 1.1

原创 Java類集基礎概念-集合輸出篇

集合輸出 1.迭代輸出Iterator 在JDK1.5之前,Collection接口中就定義了iterator()方法(List、Set中也繼承了下來),通過該方法可以取得Iterator接口的實例化對象; 在JDK1.5之後,將該方法提

原创 Java:序列化和反序列化解析

本篇圍繞三個問題展開: 1.什麼是序列化?什麼又是反序列化? 2.爲什麼要有序列化這個東西? 3.怎麼用呢? 問題一:什麼是序列化,反序列化? 當進程在通信時,不管數據在終端是何種格式,在網絡上傳輸均以二進制序列的形式進行傳輸。 (注意:

原创 自動化測試Selenium篇-2(控件定位)

Selenium 1.Selenium簡介 Selenium是ThroughtWorks公司推出的強大的開源Web功能測試工具系列;支持多平臺、多瀏覽器、多語言去實現自動化測試。支持多種開發語言:ruby,python,java,perl

原创 設計模式-模板設計模式

1.定義 模板方法模式:在一個方法中定義一個算法的骨架,而將一些步驟延遲到子類中。模板方法使得子類可以在不改變算法結構的情況下,重新定義算法中的某些步驟 2.栗子來嘍 首先,我們舉一個熟悉的栗子,咖啡和茶已成爲日常飲品,那麼我們就用這個舉

原创 二叉樹-找最大(最小)深度

1.題目:給定一棵二叉樹,求其最大深度/最小深度 最大深度: 最大深度是從根節點到最近葉子節點的最長路徑上的節點數量。 最小深度: 最小深度是從根節點到最近葉子節點的最短路徑上的節點數量。 2.題目分析: 最大深度:返回3 (1)如果二叉

原创 自動化測試基礎篇-1(概念知識)

自動化測試 1.什麼是自動化測試? 顧名思義,就是整個測試過程不需要每一步都進行人爲測試干預,而是通過人爲設定一些測試行爲(代碼)來使得計算機自動執行測試代碼的過程。簡言之,就是將人爲驅動的測試行爲轉換爲計算機執行的過程。 2.常見的自動