2013-07-30 3 views
3

예를 들어 이진 검색에 추가 요구 사항을 추가하는 것이 기능 보강이라고 불리는 경우에 대해 들었습니다.컴퓨터 과학에서 정확히 무엇을 의미합니까?

알고리즘의 복잡성 증가가 기능 보강으로 간주됩니까?

감사

+0

아마도이 질문은 http://programmers.stackexchange.com으로 마이그레이션해야합니까? 이것은 매우 유용한 질문입니다. 왜냐하면 어디에서나 기능 향상에 대한 명확한 정의가없는 것 같아서이 질문은 google에서 '[augmentation computer science] (https://www.google.com/search?q= 증강 + 컴퓨터 + 과학) ' – icc97

답변

3

증강은 일반적으로 확장을위한 멋진 이름을 의미합니다. 컴퓨터 과학에는 많은 기초적이고 잘 연구 된 개념, 알고리즘 또는 데이터 구조가 있습니다. 이러한 개념은 많은 실제 문제를 해결하는 데 중요하지만 때로는 주요 아이디어에 몇 가지 추가 기능을 추가해야합니다.

표준 삽입/삭제로 숫자 세트를 관리하려는 경우 주어진 세트 번호 k보다 작은 세트의 항목 수를 효율적으로 계산하고자한다고 가정 해 보겠습니다.

이렇게하려면 표준 (균형 잡힌) 이진 검색 트리를 구현하고 모든 노드에 해당 노드의 왼쪽 하위 트리 (더 작은 항목의 수를 나타냄)에 노드 수를 저장하십시오. 삽입/삭제 중에 해당 카운터를 추적하십시오. 그런 다음 k보다 작은 항목의 수를 반환하려면 트리에서 k를 찾고 k의 카운터를 반환하면됩니다. 그것은 보강입니다.

+0

'증강 '은'강화 '로 설명되었다 [참조] (http://stackoverflow.com/questions/14994391/how-do-i-think-in-angularjs-if -i-have-a-jquery-background/15012542? noredirect = 1 # comment29088343_15012542) – icc97

+0

@ icc97 네,하지만 저는 '확장자'가 더 적합한 단어라고 생각합니다. – pkacprzak

1

내가 복잡성을 추가로 제한하지,하지만 뭔가 (같은 Augumented Realtity)에 대한 모든 추가가 "증원"호출 할 수 있습니다. 나는 컴퓨터 과학에서 "Augmentation"에 대한 명확한 정의를 보지 못했으며, 나는 그것이 있을지 의심 스럽다.

관련 문제