在各種程式語言中, 張量是以多維陣列的形式表示的,
1個三維(階 rank)張量a: (shape:(3,2,1)), [
[[1],[2]],
[[3],[4]],
[[5],[6]] ]
張量的rank是由第乙個元素左邊的左括號[ 數量決定的, 張量的shape是由每一層括號中元素的數量決定, 最裡面的括號元素只有1個, 倒數第二層的括號即每行包含的最小括號數量為2, 倒數第三層的括號即包含了第二層的括號的數量, 這裡為3
要找到某個元素, 需要指定陣列的下標, 如a[3,2,1]=6
我以前困惑的地方, 其實是混淆了這個陣列位置下標表示的向量[3,2,1]和這個向量代表的位置/座標上對應元素的值(6), 如果把這個三維張量想象成乙個三維的立方體, 那麼這個表徵元素位置的向量在每個維度上最大值為張量在這個維度的長度, 且只能取整數.
這種資料表示形式也和excel中sheet, row, column或關係式資料庫中的table, record, field類似, 用來定位元素的位置, 這個位置和**元素本身是什麼內容, 這的確是2個概念, 而且要表示這種資料, 理論上是要填充所有的座標, 相對來說是比較消耗儲存空間的.
陣列一維2維3維動態申請及用Vector的表示方法
1 變長一維陣列 這裡說的變長陣列是指在編譯時不能確定陣列長度,程式在執行時需要動態分配記憶體空間的陣列。實現變長陣列最簡單的是變長一維陣列,你可以這樣做 include using namespace std int main 注意int p new int len 這一句,你不能這樣做 int ...
我對服務維活的思考
近來,在參加面試,面試過程中也遇到各種各樣的問題。現將其中的乙個問題分享出來,也分享下自己的思考,如有錯誤,歡迎指正。問題 我現在有成千上萬臺的服務,因為數目巨大,不可能人為的去監控,那麼我要如何去監控這些服務的存活或者是否有卡死?結果 當時,我直接被這個問題卡住了,原因有二 1.成千上萬臺服務的話...
三維向量的長度python 對向量空間的理解
線性代數是研究向量和矩陣的一門數學,矩陣也是向量構成的,所以線性代數主要是研究向量,向量空間以及向量線性組合性質的一門科學。我們很早就接觸到了向量這個東西,向量也稱為向量,是一種有方向,有數值大小的一種數值表示。我們知道向量有幾種基本的運算,向量加法,就是向量裡的每乙個分量對應相加,向量與乙個標量相...