C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[74021] Re:[질문] 많은데이타 처리건
지나가다 [] 3646 읽음    2016-12-05 19:52
전화번호 1억개
전화번호를 숫자로 형변환합니다.
0~1억까지의 숫자가 나오겠지요.

한 번호를 한 비트로 간주하면 12,500,000 바이트가 되겠지요.
12MB 정도 됩니다.

(배열에 넣고)번호가 나올때마다 해당 비트를 1로 설정합니다.
중복이 나와도 이미 1이기 때문에 상관없습니다.

이런 방식이면 최종 추출 전화번호는 정렬되어 있고 연산속도도 개선이 가능합니다.

ps. 경우에 따라 가운데 국번 3자리, 4자리를 구분하시면 됩니다.




하안인 님이 쓰신 글 :
:
: 1억개의 데이타를 올린 후 그중에서 램덤으로 데이타를 추출하려고 합니다.
:
: vector 를 이용해서 일억개의 데이타를 넣은 후 추출하려고 하니 에러가 나네요.
:
:   AcsMan A;
:   for(i = 1; i <= 9999; i++)
:      for(j = 1; j <= 9999; j++)
:      {
:         s.printf("010-%04d-%04d",i,j);
:         A.phone = s;
:         v_acsman.push_back(A);
:         }
:
:   randomize();
:   i = 0;
:   while(i < 400000)
:   {
:      j = random(v_acsman.size());
:      A = v_acsman.at(j);
:      v_man.push_back(A);
:      v_acsman.erase(v_acsman.begin()+j);
:      i++;
:   }
: 1억개중 40만개를 추출하려고 하는데 vector 말고 다른것을 써야 하나요.
:

+ -

관련 글 리스트
74007 [질문] 많은데이타 처리건 하안인 3682 2016/11/28
74021     Re:[질문] 많은데이타 처리건 지나가다 3646 2016/12/05
74023         Re:Re:[질문] 많은데이타 처리건 3571 2016/12/06
74026             Re:Re:Re:[질문] 많은데이타 처리건 StarWagon 3578 2016/12/07
74014     Re:[질문] 많은데이타 처리건 StarWagon 3552 2016/11/29
74018         Re:Re:[질문] 많은데이타 처리건-감사합니다. 하안인 3519 2016/12/01
74010     Re:[질문] 많은데이타 처리건 라스코니 3496 2016/11/29
74011         Re:Re:[질문] 많은데이타 처리건 하안인 3487 2016/11/29
74012             Re:Re:Re:[질문] 많은데이타 처리건 라스코니 3548 2016/11/29
74008     Re:[질문] 많은데이타 처리건 StarWagon 3566 2016/11/29
74009         Re:Re:[질문] 많은데이타 처리건 하안인 3538 2016/11/29
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.