«ds.data-structures» 태그된 질문

공간 하한 또는 객체 삽입 및 삭제의 시간 복잡성과 같은 데이터 구조의 속성 및 응용

2
O (1) 푸시 / 팝 시간으로 3 개의 스택을 하나의 배열로 구현할 수 있습니까?
고정 된 크기의 배열 하나를 사용하여 두 개의 스택을 효율적으로 구현할 수 있습니다. 스택 # 1은 왼쪽 끝에서 시작하여 오른쪽으로 커지고 스택 # 2는 오른쪽 끝에서 시작하여 왼쪽으로 커집니다. 세 개의 스택에 대해서도 동일합니까? 보다 구체적으로, 다음과 같은 조건에서 3 개의 스택을 구현할 수 있습니다. N 개의 개체를 담을 수있는 …

2
합계되는 두 개의 숫자를 선택하십시오.
가장 가까운 이웃 문제가 있습니다. 실수 (매우 큰 !)과 목표 실수 , SUM이 가장 가까운 및 를 찾으십시오.a1,…,ana1,…,ana_1, \ldots, a_nnnnpppaiaia_iajaja_jppp . 우리는 합리적인 전처리 / 인덱싱을 허용합니다a1,…,ana1,…,ana_1, \ldots, a_n (까지 O(nlogn)O(nlog⁡n)O(n \log n))이지만 쿼리시 (제공됨) ppp) 결과가 매우 빠르게 반환되어야합니다 (예 : O(logn)O(log⁡n)O(\log n) 시각). (단순한 예 : SINGLE 만 …

1
힙 정렬 : 힙 = ~ Quicksort : BSTs = ~ Mergesort : ___?
제목의 간결함을 변명하십시오. 간결한 제단에 대한 명료성을 희생했을 수도 있습니다. 배열의 요소를 이진 검색 트리에 삽입하고 다시 읽으려면 삽입시 해당 배열에서 Quicksort를 실행하는 것과 동일한 비교가 필요하다는 것을 알 수 있습니다. Quicksort에서 사용하는 피벗 순서는 이진 검색 트리에 삽입되는 순서입니다. Heapsort는 문자 그대로 이러한 일련의 삽입을 수행 한 다음 요소를 …

2
및 부분 선형 공간 에서 거의 보편적 인 문자열 해싱
다음은 문자열에 대한 두 가지 해시 함수 계열입니다. :엑스⃗ = ⟨엑스0엑스1엑스2…엑스미디엄⟩x→=⟨x0x1x2…xm⟩\vec{x} = \langle x_0 x_1 x_2 \dots x_m \rangle 들면 프라임 , 위한 \에서 \ mathbb {Z}를 _p . Dietzfelbinger et al. "다항식 해시 함수는 신뢰할 수 있음"에서 \ forall x \ neq y, P_a (h ^ 1_a (x) = …

2
서브셋 조회 알고리즘
하위 집합의 목록 이 합니다. 필요한 경우이 목록에서 전처리를 수행 할 수 있습니다. 이 전처리 후에 다른 세트 됩니다. 세트 를 로 식별하고 싶습니다 .XX\cal X{1,...,n}{1,...,n}\{1, ..., n\}A⊆{1,...,n}A⊆{1,...,n}A \subseteq \{1, ..., n \}B∈XB∈XB \in \mathcal XB⊆AB⊆AB \subseteq A 명백한 알고리즘 (전처리없이)에는 시간 )가 걸립니다. 각 별도로 를 테스트하면 됩니다. 이것보다 …

2
트리 모음을 검색하기위한 효율적인 알고리즘
나는 나무의 큰 데이터 세트를 가지고 내가 지정하여 검색하고자하는 treelet (연결 서브 그래프 참조). 쿼리는 데이터 집합에서 트리 릿의 모든 발생을 반환해야합니다. 효율적인 알고리즘이 있습니까? 서 픽스 배열과 같은 것을 생각하고 있었지만 검색 트리 릿은 임의의 모양이 될 수 있기 때문에 순진하게 트리를 문자열로 (노드의 고정 순회 순서에 따라) 작동하지 …


1
와일드 카드 문자열이 세트의 다른 와일드 카드 문자열과 완전히 일치하는지 판별
잠시 동안 나를 괴롭힌 문제가 있습니다. 문자열 이 1과 0 의 시퀀스이고 와일드 카드 문자열 이 1, 0 및? s 의 시퀀스 라고 가정하겠습니다 . 모든 문자열과 와일드 카드 문자열의 길이는 같습니다. 이들은 표준 UNIX 와일드 카드입니다. 10 ?? 1은 10011, 10111 등과 일치합니다. 해당 위치에서 1 또는 0과 일치합니다. …

2
맵 트리에 대한 최적의 데이터 구조는 무엇입니까?
데이터 구조, 기본적으로 맵 트리를 찾고 있는데, 각 노드의 맵에는 새로운 노드와 부모 노드 맵의 요소가 포함되어 있습니다. 여기서 맵은 STL의 맵 또는 파이썬의 dict와 같은 키와 값이있는 프로그래밍 맵을 의미합니다. 예를 들어 루트 노드가있을 수 있습니다. root = {'car':1, 'boat':2} 부모 맵에 요소를 각각 추가하는 2 명의 자식 child1 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.