原创 計算機硬件結構

1、馮諾依曼計算機的特點: 計算機由5大部件組成:運算器、控制器、存儲器、輸入、、輸出 指令和數據以同等地位存於存儲器,可按地址尋訪 指令和數據用二進制表示 指令由操作碼和地址碼組成(操作碼執行什麼樣的操作,地址碼爲操作的數據) 存儲程序

原创 指針和引用的區別

一、引用: 引用不是一個對象,而是給對象另起一個別名 引用在定義時,系統不會爲其分配內存。 引用在定義時必須要初始化,在定義時就必須要和它的初值綁定在一起,並且整個程序運行中都不能再重新綁定到另一個對象。 引用類型的初值必須是一個對象。

原创 C++基礎—— 數組

一、基本數組 1、數組的特點 數組中每個元素數據類型相同。 數組中元素的位置在內存中是連續的。 在很多情況下使用數組的名字,其實使用的是一個指向數組首元素的指針。 2、數組作爲函數的形參 (1)、數組有兩個性質:不允許拷貝數組,以及使用數

原创 順時針打印矩陣(15)

一、題目  : 1、分析: 可以按照該矩陣中元素的個數來進行打印,分爲四個部分:      最上面的行 最右邊的列 最下邊的行 最左邊的列 【尤其注意每行的起點和終點】 2、代碼 class Solution { public:

原创 C# 寫入、讀取文本內容

  寫入操作必須要有該路徑的目錄,若沒有目錄將無法進行寫入。而對應的文件若沒有,會自動的創建。 1、寫入讀取文本的方法, // **************** 寫入內容 ******************* //向指定路徑添加文件,

原创 調整數組順序奇數前偶數後

題一 【 輸入一個整數數組,實現一個函數來調整該數組中數字的順序,使得所有的奇數位於數組的前半部分,所有的偶數位於數組的後半部分,並保證奇數和奇數,偶數和偶數之間的相對位置不變 】 方法一:藉助額外的空間 class Solution

原创 Unity三維數學 —— 歐拉角與四元數

一、歐拉角 1、歐拉角 X、Z 沿自身座標系旋轉,Y沿世界座標系旋轉 2、API:Vector3 eulerAng = gameObject.transform.eulerAngles; // 歐拉角沒有方向大小等概念,其中的x,y,z

原创 常用的排序算法(02)—— 冒泡排序

1、冒泡排序的特點 冒泡排序是穩定排序,只有當兩個元素不同時纔會交換  冒泡排序是原址排序,不需要藉助額外的空間 由於每次都要遍歷整個數組,兩個循環,所以冒泡排序的時間複雜度爲  2、冒泡排序的基本思想 從頭開始比較相鄰的元素,如果後面的

原创 常用的排序算法(03)—— 選擇排序

一、選擇排序 1、選擇排序相對於冒泡排序,要高效一些。因爲冒泡排序會有大量的交換,而選擇排序則可以直接將對應的元素放在指定的位置上。 2、選擇排序由於每次都要遍歷整個數組,需要遍歷n次,所以選擇排序的時間複雜度爲  3、基本思想是:每次選

原创 在模型頂部添加標籤說明

一、在Unity中常需要爲模型添加文字標籤來作爲模型的名字 1、常常將標籤放在模型的頂部 2、腳本代碼如下: using System.Collections; using System.Collections.Generic; usi

原创 C++中memset函數的用法

memset 函數是內存賦值函數,用來給一塊指定內存空間進行賦值的。 1、可以用它對一片內存空間逐字節進行初始化 2、其函數原型如下: void* __cdecl memset(void* _Dst,int _Val,int _S

原创 03 — 將本地文件推送到 GitHub上

在安裝和配置好 GitBash 後,將文件或者修改後的文件推送到 GitHub 上,分爲以下幾種情況: 一、本地不存在該倉庫,而GitHub上已有該倉庫 1、先在本地創建一個空的文件夾(如 Test ),用來放從GitHub上克隆下來的

原创 位運算(11)

題目一:二進制中1的個數 【輸入一個整數,輸出該數二進制表示中1的個數。其中負數用補碼錶示】 方法一:從最低位開始用1分別與該整數進行與運算。 代碼如下 class Solution { public: int Number

原创 動態規劃與貪婪算法(10)

題一:剪繩子 方法一:動態規劃的方法。需要O(n^2)的時間和O(n)的空間 1、分析:自上而下的來進行分析,再用自下而上的方法來求解。 2、代碼如下 class Solution { public: int cutRope(

原创 回溯法(09)

題一:矩陣的路徑 1、分析:通常是用遞歸來實現其代碼,尤其注意邊界條件。 2、代碼爲: class Solution { public: bool hasPath(char* matrix, int rows, int col