原创 LeetCode 621 任務調度器

題目 給定一個用字符數組表示的 CPU 需要執行的任務列表。其中包含使用大寫的 A - Z 字母表示的26 種不同種類的任務。任務可以以任意順序執行,並且每個任務都可以在 1 個單位時間內執行完。CPU 在任何一個單位時間內都可以

原创 skynet網絡模塊的簡易demo

skynet網絡模塊的簡易demo 服務端 local skynet = require "skynet" local socket = require "skynet.socket" skynet.error("hahha")

原创 插入排序和選擇排序

插入排序 一、複雜度和穩定性 時間複雜度:最壞和平均:O(N*N),最好O(N) 空間複雜度:O(1) 穩定性:穩定 二、CPP實現 #include <vector> #include <stdlib.h> #include <

原创 冒泡和快排

一、冒泡 1、複雜度和穩定性 時間複雜度:平均:O(N2),最壞(N2),最好(N)(#define AVOID_ORDERED) 空間複雜度O(1) 穩定性:穩定 2、CPP實現 #include<vecctor> using

原创 堆排序

複雜度和穩定性 時間複雜度:最好、最壞、平均:O(N*ln(N)) 穩定性:不穩定 CPP實現: #include <vector> #include <time.h> #include <stdlib.h> using name

原创 LeetCode 1 兩數之和

題目 給定一個整數數組 nums 和一個目標值 target,請你在該數組中找出和爲目標值的那 兩個 整數,並返回他們的數組下標。 你可以假設每種輸入只會對應一個答案。但是,你不能重複利用這個數組中同樣的元素。 示例: 給定 nu

原创 高性能Mysql讀後總結 第一章

一、Mysql架構 1.1 Mysql邏輯架構 Mysql邏輯架構分爲三層:   第一層爲對外開放的連接處理、授權認證、安全等。   第二層爲Mysql大部分的核心服務,如查詢的解析、優化、緩存以及所有的內置函數,如日期、時間、數

原创 希爾排序

複雜度和穩定性 時間複雜度:平均O(Nln(N)),最好O(N),最差O(NN) 空間複雜度:O(1) 穩定性:不穩定 CPP實現 #include <vector> #include <stdlib.h> #include <t

原创 LeetCode 6 Z字型變換

將一個給定字符串根據給定的行數,以從上往下、從左到右進行 Z 字形排列。 比如輸入字符串爲 “LEETCODEISHIRING” 行數爲 3 時,排列如下: L C I R E T O E S I I G E D

原创 LeetCode 17 電話號碼的字母組合

給定一個僅包含數字 2-9 的字符串,返回所有它能表示的字母組合。 給出數字到字母的映射如下(與電話按鍵相同)。注意 1 不對應任何字母。 示例: 輸入:“23” 輸出:[“ad”, “ae”, “af”, “bd”, “be”

原创 外觀模式

作用 將某些實現隱藏起來,交給另一個類去管理,管理的類對外開放,調用的時候只需要訪問這個管理類 實現 有一個活動,需要遊戲服和跨服交互,需要使用這兩個服的函數的時候,只需要調用管理這兩個類的那個類即可(例子中main中的調用)。

原创 單例模式

懶漢 template<typename T> class Singleton { public: T* GetSingletonPtr() { if(_instance)return _instance; else

原创 LeetCode 3 無重複字符的最長子串

給定一個字符串,請你找出其中不含有重複字符的 最長子串 的長度。 示例 1: 輸入: “abcabcbb” 輸出: 3 解釋: 因爲無重複字符的最長子串是 “abc”,所以其長度爲 3。 示例 2: 輸入: “bbbbb” 輸出:

原创 placement new

內存池中會“釋放”內存 所謂內存中的釋放,實際只是內存複用,並沒有把內存還給操作系統 所以釋放的時候需要調用析構函數,再次使用的時候需要調用構造函數 在沒有使用內存池的時候構造只需要new Object就可以了,但是在使用內存池的

原创 LeetCode 7 整數反轉

給出一個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。 示例 1: 輸入: 123 輸出: 321 示例 2: 輸入: -123 輸出: -321 示例 3: 輸入: 120 輸出: 21 注意: 假設我們的環境