일반적인 질문
데이터 구조를 사용하는 알고리즘과 데이터베이스를 사용하는 알고리즘의 차이점은 무엇입니까?
일부 상황
이것은 한동안 나를 괴롭힌 질문이며, 그것에 대한 설득력있는 대답을 얻을 수 없었습니다.
현재 데이터 구조와 관련이 많은 알고리즘에 대한 이해를 높이기 위해 노력하고 있습니다. 이들은 Bag, Queue, Stack, Priority Queue 및 Heap과 같은 기본 구조입니다.
또한 매일 데이터베이스를 사용하여 최종 사용자가 처리 및 제출 한 데이터 또는 프로그램에서 처리 한 데이터를 저장합니다. 데이터베이스의 테이블을 기반으로 생성되는 자체 데이터 구조를 가진 DAL을 통해 데이터를 검색하고 제출합니다.
데이터베이스를 사용하여 데이터를 정렬하여 오름차순 / 내림차순으로 주문한 데이터를 다시 보내거나 논리로 데이터를 검색 및로드하고이 데이터를 우선 순위 대기열에서 처리하고 힙 정렬하는 옵션이있을 때 질문이옵니다. 그것의 모든. 또는 다른 하나는 레코드의 하위 집합을로드하지 않고 이진 검색과 같은 것을 사용하여 관심있는 레코드를 찾는 대신 데이터베이스를 사용하여 레코드를 검색하는 것입니다.
내 생각에는 통신 비용이 많이 들기 때문에 데이터베이스 엔드를 보내기 전에 데이터베이스 엔드에서 많은 작업을 수행하려고합니다. 또한 데이터베이스보다 데이터를 처리하기보다는 자체 로직 내에 엄격하게 정의 된 알고리즘 및 데이터 구조를 언제 사용하는지 궁금합니다.
여기 질문이 있습니다 ...
질문
- 데이터 구조와 데이터베이스의 차이점은 무엇입니까?
- 데이터베이스 자체가 아닌 사용자 자신의 논리 내에서만 정의 된 데이터 구조를 사용하는 알고리즘을 언제 사용합니까?
- @Harvey post : 데이터베이스의 메소드는 언제 자신의 로직의 메소드보다 사용하기에 덜 효율적입니까?
- @mirculixx post : 어떻게 메소드를 효율적으로 만드는가?
- @Harvey post : 데이터베이스에서 데이터 구조로 데이터를 처리하는 것보다 데이터 처리 속도가 어떻게 빠릅 니까?
설명
- @Grant post : 내가 일반적으로 사용하는 데이터베이스는 관계형이며 이러한 질문은 데이터베이스에서 작동하지 않습니다. 그러나 이러한 질문은 지속성 프레임 워크에 적용 할 수 있다고 생각합니다 (프레임 워크를 말할 때 가장 일반적인 의미입니다).
특정 상황이없는 답변은 어렵다는 것을 알고 있습니다. 생각할만한 음식, 조언 또는 토론 요점은 주로 내가 찾고있는 것입니다.