原创 跳躍表的定義及實現

跳躍表: Skip List是一種隨機化的數據結構,基於並聯的鏈表,其效率可比擬於二叉查找樹(對於大多數操作需要O(log n)平均時間)。 基本上,跳躍列表是對有序的鏈表增加上附加的前進鏈接,增加是以隨機化的方式進行的,所以

原创 TC20與masm5.0的相互交互

    在學習彙編語言與C的過程中遇到了幾個拓展性問題,衆所周知,在C語言的構成中,我們自己所寫的代碼稱之爲用戶代碼,因爲在使用TC環境編譯運行該代碼期間,還用到了許多其它的文件,比如在TC20中的C0S.obj,在TC20中,

原创 Django建站 - 模型篇

在Django中,可以在models.py中如下樣式定義模型; from django.db import models class Acommentb(models.Model): #繼承於models.Model

原创 Django建站 - 模板篇

上一節學會了怎麼使用 django 創建項目,以及創建app,這次學習在一個app中使用網頁模版。 一、模版語法規則 1.1、變量 : {{ var }}** 1.2、標籤 : {% var %}** 1.3、過濾器 :{{

原创 取模定義及性質

** 一、取模運算定義 ** 給定一個正整數p,任意一個整數n,一定存在等式 : n = kp + r ; 其中 k、r 是整數,且 0 ≤ r < p,則稱 k 爲 n 除以 p 的商,r 爲 n 除以 p 的餘數。 對

原创 鏈表的定義以及實現

** 鏈表是一種物理存儲單元上非連續、非順序的存儲結構,數據元素的邏輯順序是通過鏈表中的指針鏈接次序實現的。鏈表由一系列結點(鏈表中每一個元素稱爲結點)組成,結點可以在運行時動態生成。每個結點包括兩個部分:一個是存儲數據元素的數據

原创 隊列的定義以及實現

隊列是一種特殊的線性表,特殊之處在於它只允許在表的前端(front)進行刪除操作,而在表的後端(rear)進行插入操作,和棧一樣,隊列是一種操作受限制的線性表。進行插入操作的端稱爲隊尾,進行刪除操作的端稱爲隊頭。 /* 數據結構:

原创 堆棧的定義和實現

** 棧(stack)又名堆棧,它是一種運算受限的線性表。其限制是僅允許在表的一端進行插入和刪除運算。這一端被稱爲棧頂,相對地,把另一端稱爲棧底。向一個棧插入新元素又稱作進棧、入棧或壓棧,它是把新元素放到棧頂元素的上面,使之成爲新

原创 [C++] 右值引用:移動語義與完美轉發

C++11 引入的新特性中,除了併發內存模型和相關設施,這些高帥富之外,最引人入勝且接地氣的特性就要屬『右值引用』了(rvalue reference)。加入右值引用的動機在於效率:減少不必要的資源拷貝。考慮下面的程序: std::ve

原创 二叉樹的定義及實現

樹形結構是一類重要的非線性結構。樹形結構是結點之間有分支,並具有層次關係的結構。它非常類似於自然界中的樹。 二叉樹的遞歸定義  二叉樹(BinaryTree)是n(n≥0)個結點的有限集,它或者是空集(n=0),或者由一

原创 Algorithm 頭文件中的算法

這次介紹Algorithm中的算法按用法分類分別有: 檢查序列中元素屬性的算法 計算序列中有指定屬性的元素個數的算法 比較兩個序列中元素的算法 用來複制或移動序列的算法 設置或改變序列中元素的算法 一、檢查元素的屬性 all

原创 並查集的定義及實現

並查集是一種樹型的數據結構,用於處理一些不相交集合(Disjoint Sets)的合併及查詢問題。 代碼實現: /* 並查集方法:Union(i,j) 把i,j所在集合合併(沒考慮路徑,把後面來的結點全設置爲第一個root的子節

原创 Java項目遠程調試實踐 - IDEA篇 (其它平臺也通用)

   衆所周知,Java是在網絡環境下誕生的語言,其對網絡也非常支持。在IDEA中,點擊調試按鈕時就能發現: 調試命令是通過socket傳輸的。通過java選項得知: 命令 含義 -XDebug 啓用調試。 -Xn

原创 [Java框架] 初識數據持久層框架 - Mybatis 之使用入門

文章目錄一、Mybatis框架簡單介紹和環境構建二、Mybatis的主要基礎組件及生命週期三、MyBatis的環境配置以及映射配置四、小結五、更加詳細的配置文檔 一、Mybatis框架簡單介紹和環境構建   衆所周知,在開發大多數系統

原创 [Java網絡編程] Netty之框架定位和其模型

在使用Java進行網絡編程時,我們肯定經常會使用到java.net,java.io,java.nio中的類。但是這裏面的類並不是十分好用,很難快速的實現高效,易用的程序。所以,Netty網絡編程框架替我們封裝了這一層的複雜性。提供了穩