zoukankan
html css js c++ java
快速生成10亿随机不重复数据代码(转)
#include
<
cstdlib
>
#include
<
iostream
>
#include
<
windows.h
>
using
namespace
std;
char
map2char[]
=
{
'
1
'
,
'
2
'
,
'
3
'
,
'
4
'
,
'
5
'
,
'
6
'
,
'
7
'
,
'
8
'
,
'
b
'
,
'
c
'
,
'
d
'
,
'
e
'
,
'
f
'
,
'
g
'
,
'
h
'
,
'
i
'
,
'
j
'
,
'
k
'
,
'
l
'
,
'
m
'
,
'
n
'
,
'
o
'
,
'
p
'
,
'
q
'
,
'
r
'
,
'
s
'
,
'
t
'
,
'
u
'
,
'
v
'
,
'
w
'
,
'
x
'
,
'
y
'
}
;
void
getbit( unsigned e,
char
*
s,
int
offset )
{
int
i
=
17
;
while
( i
>=
0
)
{
s[
18
*
offset
+
i]
=
((e
>>
i)
&
1
);
--
i;
}
}
int
main(
int
argc,
char
*
argv[])
{
srand(GetTickCount());
char
bit[
90
], S[
90
];
for
(
int
i
=
0
; i
<
sizeof
(bit);
++
i ) bit[i]
=
0
, S[i]
=
0
;
unsigned x, T;
for
(
int
k
=
0
; k
<
5
;
++
k )
{
do
x
=
rand();
while
( x
==
0
);
getbit( x, S, k);
getbit( x, bit, k );
}
unsigned head
=
89
;
unsigned j
=
0
, time
=
GetTickCount(), Max
=
1000000
;
do
{
++
j;
T
=
(bit[head]
&
1
)
^
(bit[(head
-
83
)
%
90
]
&
1
)
^
(bit[(head
-
84
)
%
90
]
&
1
)
^
(bit[(head
-
86
)
%
90
]
&
1
)
^
(bit[(head
-
89
)
%
90
]
&
1
);
bit[head]
=
T;
head
=
(head
+
1
)
%
90
;
for
(
int
index
=
0
; index
<
18
;
++
index )
{
int
num
=
0
;
for
(
int
j
=
0
; j
<
5
;
++
j )
num
+=
(bit[(head
+
5
*
index
+
j)
%
90
]
==
0
)
?
0
: (
1
<<
j);
cout
<<
map2char[num];
}
cout
<<
endl;
}
while
( j
<
Max );
cout
<<
"
time:
"
<<
GetTickCount()
-
time
<<
"
ms!\n
"
;
system(
"
PAUSE
"
);
return
EXIT_SUCCESS;
}
查看全文
相关阅读:
如何得到运行程序的路径,以及如何得到路径的文件夹,文件名,以及类型等等信息
STL的心得(4)运用(MFC)
STL的心得(3)---运用(控制台)
【Css】清除浮动,独占一行
[Html]加链接提示
【JS】清除子节点
【CSS】使Div在父元素中水平居中
[JS]回前页
【JS】鼠标移动到链接上变手型
【jQuery】改变控件的使能状态
原文地址:https://www.cnblogs.com/feng801/p/1452702.html
最新文章
oracle 数据库复习
Oracle数据库设计要做到五戒
Oracle内存参数调优技术详解
HQL 语法 明细
复制和粘贴的js代码(IE/FireFox/mozilla/ns)
用AdventNet SNMP API获取SNMP表信息(C#)
NHibernate查询语言(HQL)
PowerDesigner一些小技巧
操作注册表
STL的心得(1)--为什么使用STL
热门文章
如何寻找类
I'm Glad
如何使对话框中接收到WM_CHAR消息(Windows编程)
如何在工具栏中,加上图标和文字?
整理的一些未公开的API
I use blog today!
如何嵌入(Docking)一个工具条
如何分屏幕(How to split the Screen)
分析类的法则
STL的心得(2)--如何使用安装STLPort
Copyright © 2011-2022 走看看