2013-07-02 2 views
1

나는 기본적인 무역 시스템 구조에 대해 공부를 마쳤으며 지금은 하나를 만들 계획이다. 나는 배열이나 다른 종류의 데이터 구조에 역사적 데이터 테이블 (날짜가 높거나 낮거나 낮거나 ... 몇 년이 걸린 날짜 등)을 넣은 다음 날짜를 사용하여 분석을 수행하고 일부 분석 결과를 다른 배열 (또는 다른 데이터 구조)에 넣어야합니다.어떤 데이터 구조를 거래 시스템에 사용해야합니까?

그래서 기본적으로 약 6 개의 열과 2000-5000 개의 행을 가진 "테이블"이 거의 없을 것입니다. 이 테이블 내에서 계산을 수행 한 다음 다른 유사한 크기 테이블에 결과를 저장합니다.

어레이가 충분합니까? 또는 연결된 목록과 같은 다른 데이터 구조를 선택해야합니까?

+0

배열은 목록보다 약간의 제한 사항이 있지만 충분히 빠르다고 생각합니다. 데이터 구조가 문제가 아니라 데이터를 최대한 빨리 처리하고 실행하도록 프로그램을 프로그래밍해야합니다. 프로세스 데이터가 필요합니다. 평행, 등등. –

+0

나는 배열이 아주 좋은 속력을 가지고 있다는 것을 알 수 있습니까? 내 첫 번째 버전은 처음에는 단 하나의 스레드 일 것이고, 나중에 더 높은 속도가 정말로 필요하다면, 그 스레드를 muti threading으로 만들면된다. 데이터 구조의 경우 이전에 공식적인 연구를 한 후에도 선택해야 할 부분에 대해서는 여전히 혼란 스럽습니다. 내가 말했듯이 – macaugmxus

+0

은 배열이 더 빠르지 만 몇 가지 제한 사항 (크기, 스와핑, 정렬 ...)이 있습니다.이 정보 집합과 정확히 무엇을하고 싶습니까? 때로는 좋은 데이터 구조가 나쁜 알고리즘에 의해 만족되면서 순차적 인 프로세스를주의하십시오 –

답변

0

정말 요구 사항에 따라 다릅니다.

비교적 적은 양의 데이터에 대한 간단한 분석 만 수행하면 (이 경우 소리가 들립니까?) 너무 화려하지 않아도됩니다. 아마도 행의 간단한 ArrayList이 잘 작동 할 것입니다. 단순하게 유지하십시오.

성능이 문제가되면 사용 패턴을 더 많이 이해해야합니다. 예를 들어 많은 읽기 전용 조회를 수행하는 경우 데이터에 색인을 생성 할 수 있습니다 (예 : HashMaps 사용). 하지만 꽤 발전하고 있습니다.

이제는 ArrayList을 사용하는 것이 좋습니다.

+0

소리가 좋습니다. 왜 arraylist 배열 아니지만? – macaugmxus

+0

흠. 주로 ArrayLists가 더 유용하거나 더 높은 수준의 기능을 가지고 있기 때문에 - 요소를 추가 할 수 있습니다. 하위 목록 등에 액세스 할 수 있습니다. 배열은 하위 레벨 구조입니다. 아주 좋은 이유가 없다면 기본 선택은 대개 ArrayList 여야합니다. – mikera

+0

2d arraylist는 arraylist에 arraylist 선언이 필요하지만 2d 배열은 훨씬 간단합니다. – macaugmxus

관련 문제