找出數(shù)組中只出現(xiàn)過一次的數(shù) EXCEL如何判斷B數(shù)組中數(shù)值在A數(shù)組中出現(xiàn)的次數(shù)?
EXCEL如何判斷B數(shù)組中數(shù)值在A數(shù)組中出現(xiàn)的次數(shù)?假設A組在A:C列,B組在D:E列。F1輸入數(shù)組公式(按Ctrl Shift enter鍵輸入)=sum(-(mmult(count(offset(
EXCEL如何判斷B數(shù)組中數(shù)值在A數(shù)組中出現(xiàn)的次數(shù)?
假設A組在A:C列,B組在D:E列。F1輸入數(shù)組公式(按Ctrl Shift enter鍵輸入)=sum(-(mmult(count(offset(A$1:C$1,row)($1:$3)-1,),D1:E1),{11})=2))向下填充
;#include<stdio。H>
#包含<string。H>
int max(int a,int b)
{
]if(a>B)return a]這是返回的[b
![int[n,I,a[1001],b[10001],and maxn=0,as an,and sum=0
scanf(%d“,&;n)
memset(b,0,sizeof(b,0,and sizeof(b,0,sizeof(b))
[int n,I,a[1001],b[10001],maxn=0,as,and the,as,and as,as,and the sum[1001]是[1001[1001],a[1001,a[1001],as[1,as,as,[a[a]是[a[i是最高的。有%d次“,ans,sum)返回0}
1。4字節(jié)表示的整數(shù)數(shù)為2^32≈40億,2字節(jié)表示的無符號整數(shù)數(shù)為2^16≈60000。
2、2G=2^31b≈20億字節(jié)。
3、為了找出出現(xiàn)次數(shù)最多的數(shù)字,應記錄每個數(shù)字的出現(xiàn)次數(shù)。最快的方法是記錄每個數(shù)字在內存中出現(xiàn)的次數(shù)。記錄方法是記錄相應的存儲器地址數(shù)和相應地址的存儲器單元數(shù)。但是,2G內存只能記錄20億字節(jié)的數(shù)字,如果每個數(shù)字的出現(xiàn)次數(shù)大于255則會發(fā)生溢出,沒有風險。因此,這種方案是不可取的。
4、這樣,磁盤上只能記錄每次出現(xiàn)的次數(shù)。這樣,就在磁盤上創(chuàng)建了一個16g文件。每4個字節(jié)對應一個整數(shù),可以對應40億個整數(shù)。用于記錄相應整數(shù)的個數(shù)。
1. 初始化文件。
2. 依次讀取數(shù)據(jù)并用無符號整數(shù)記錄在磁盤文件中。如果發(fā)生溢出,則該數(shù)字是次數(shù)最多的數(shù)字。
3. 從文件中讀取每個數(shù)字的次數(shù),用變量a記錄最高次數(shù),用變量B記錄最高次數(shù)的數(shù)據(jù),用文件依次記錄最高次數(shù)的數(shù)據(jù)。當最大次數(shù)增加時,a1和B被設置為1,并且該數(shù)字被寫入文件中。當出現(xiàn)相同次數(shù)的數(shù)字b1時,該數(shù)字被寫入文件的相應位置,直到全部被讀取為止。
所以您根本不需要2G內存。