一般題目中不會卡空間,但是還是需要會計算。
首先看一下,各種資料型別的長度。
在k&r的the c programming language中寫道:char占用乙個位元組,int通常代表特定機器中整數的自然長度。short型別通常為16位,long型別通常為32位,int型別可以為16位或32位。各編譯器可以根據硬體特性自主選擇合適的型別長度,但要遵循以下限制:short與int型別至少為16位,而long型別至少為32位,並且short型別不得長於int型別,int型別不得長於long型別。
在我電腦(win10,64位)中實測各種資料型別的長度如下:
一般題目中的空間限制為64mb,假設都用來開int陣列:
乙個int為4個byte,1mb為1024*1024個byte,所以64mb最多可以開16777216個int(1.67∗1
071.67 * 10^7
1.67∗1
07個int)。但是y總說過,作業系統會為我們做優化,只有真正用到時才會開這麼大,emmmmm~?等我學的更深入了再看一下吧。
the c programming language
棧空間大小限制
不同系統的棧空間大小不同,可通過如下方法檢視系統棧大小限制 cat proc 1 limits 該檔案列出了系統資源限制情況 ubuntu 16.04 limit soft limit hard limit units max cpu time unlimited unlimited seconds...
使用者管理 限制使用者硬碟使用空間
限制使用者硬碟使用空間 unix作為一種多使用者系統,它允許多個使用者共同使用系統的資源,包括系統的記憶體,cpu和硬碟。在預設情況下,系統並不會限制每個使用者可以使用硬碟空間的大小,所以如果使用者惡意使用硬碟,或使用者由於疏忽,將硬碟空間全部占用,將導致其他使用者無法使用硬碟,從而使系統效能下降,...
面試現場 大資料和空間限制
目錄40億個非負整數中找到沒出現的數 找到100億個url中重複的url以及搜尋詞彙的topk問題 40億個非負整數中找到出現兩次的數和所有數的中位數 想要在很多整數中找到出現次數最多的數,通常的做法是使用雜湊表對出現的每乙個數做詞頻統計。雜湊表的key需要占用4b,value也是4b。本題共有20...