알고리즘 개념 및 알고리즘 속성컴퓨터 과학에서 가장 중요한 개념 중 일부를 나타냅니다. 오늘날 컴퓨터 기술 시대에 많은 사람들은 그것이 무엇인지에 대해 생각하고 점차적으로 컴퓨터 과학의 기초를 더 자세히 탐구하기 시작하는 반면, 현대 세대는 이미이 자료를 6 학년.
이게 뭐야?
알고리즘의 개념과 알고리즘의 속성은 무엇입니까?
알고리즘은 특정 일련의 동작입니다. 즉, 우리는이를 인식하지 못할 수도 있지만 원칙적으로 매일 처리해야합니다.
인간과 알고리즘
예를 들어 회원 중 한 명에게가족이 상점에서 무언가를 구입하기 위해 행동 알고리즘을 설정합니다. 이 경우 위에서 언급했듯이 명확한 작업 알고리즘이 설정됩니다. 예를 들면 다음과 같습니다.
- 특정 상점으로 이동하십시오.
- 판매 할 흰 빵이 있는지 알아보십시오.
- 그것이 신선한 지 알아보십시오.
- 2 번과 3 번 질문에 대한 답이“예”이면 빵 두 개를 샀습니다.
물론 절차는 다음과 같이 보일 수 있습니다.아주 평범하고 그와 같은 설명은 상당히 방대합니다. 그러나 실제로 현대 컴퓨터 과학에서 알고리즘의 개념과 알고리즘의 속성에 대해 이야기하고 있다면 위의 알고리즘이 가장 간단한 알고리즘 중 하나이기 때문에 지침이 훨씬 더 방대해질 수 있습니다.
자연의 알고리즘
각 사람은 끊임없이 가장 큰 문제를 해결합니다.다양한 복잡성을 가진 다양한 작업 중 일부는 너무 간단하여 특정 작업으로 인식되지 않고 완전히 자동으로 해결됩니다. 예 : 열쇠로 문을 닫고, 씻고, 아침을 먹고, 가족에게 먹이를주는 등.
그러나 다른 작업이 있습니다.너무 복잡해서 문제를 해결하려면 처음에 해결책을 찾은 다음 설정된 목표를 달성하기 위해 상당한 노력과 긴 반성이 필요합니다. 이러한 작업에는 외국어 배우기, 일정 금액의 수입 등이 포함됩니다. 즉, 이러한 작업에는 "빵 구매"작업을 완료하는 데 필요한 것보다 훨씬 더 복잡한 단계가 필요하지만 실제로는 가장 간단한 작업도 몇 단계로 해결할 수 있습니다.
개념, 유형 및 속성
특정 일련의 작업 형태로사람이 일상 생활에서 마주 치는 수많은 문제를 해결하는 절차를 설명 할 수 있으며, 컴퓨터 과학에서 알고리즘의 개념과 알고리즘의 속성으로 표현되는 것이 바로이 순서입니다.
가장 유명한 것 중 하나는 두 정수의 최대 제수를 결정하는 소위 유클리드 알고리즘입니다.
주목해야 할 것은알고리즘의 개념과 그 속성을 고려할 때 동작 자체뿐만 아니라 수행 순서도 정확하게 이해해야합니다. 실제로, 알고리즘의 동작 순서가 변경 될 때 상황이 종종 발생하며, 특정 상황에서 궁극적으로 실행할 수없는 것으로 판명 될 수 있습니다. 예를 들어 상점에 가면 알고리즘의 시작은 다음과 같습니다.
- 가게에 가십시오.
- 빵을 선택하십시오.
또는:
- 빵을 선택하십시오.
- 가게에 가십시오.
마지막 알고리즘을 고려하면이 경우 빵이 처음에 선택되고 나서야 더 정확하게 정의 된 작업을 가지고 가게로 이동합니다. 실제로 필요한 빵이 없으면 우리가 구축 한 알고리즘은 궁극적으로 비 -실행 가능.
유형
알고리즘 유형은 다음과 같습니다.
- 주기적. 순환 구조, 즉 다양한 작업의 여러 반복이있는 알고리즘입니다.
- 선의. 시퀀스 구조를 사용하는 알고리즘, 즉 동작이 차례로 배열됩니다.
- 분기. 특정 조건이 충족되는지 여부에 따라 작업이 선택되는 분기 구조를 사용하는 알고리즘입니다.
속성
그 속성은 다음과 같습니다.
- 결정론. 동일한 초기 데이터가 여러 번 제공되면 알고리즘이 동일한 방식으로 실행되기 시작하여 동일한 신호를 제공합니다.
- 매스 캐릭터. 알고리즘은 하나의 문제가 아니라 특정 유형의 문제를 해결합니다.
- 유효성. 어떤 경우에도 알고리즘을 사용하면 문제가 해결됩니다.
- 이산 성. 알고리즘에는 일련의 작업이 포함되며 구현은 복잡성을 나타내지 않습니다.
- 수족. 알고리즘의 동작 순서는 무제한이거나 무한 할 수 없습니다.
- 단정. 특정 작업을 수행하기 위해 알고리즘이 형성되면 항상 적절한 결과를 생성해야합니다.
컴퓨터 과학의 알고리즘
사람이 점차 컴퓨터 과학을 탐구하고알고리즘의 개념과 속성이 무엇인지 생각하면 오류가있는 알고리즘이 어떤 의미에서는 작동하는 알고리즘보다 낫지 만 잘못 작동한다는 것을 알게됩니다. 결국 오류가 발생하면 컴퓨터가 이에 대해 알려주고 나중에 오류를 찾아 수정할 수 있으며 알고리즘을 잘못 작동시키는 오류가 드문 경우에만 나타나는 경우이 경우에는 다음과 같은 오류가 발생할 수 있습니다. 가장 중요한 순간에 나타납니다.
작곡이 얼마나 쉬운가요?
많은 사람들에게 정보 처리는상당히 간단한 작업이지만 실제로는 그렇지 않습니다. 왜냐하면 먼저 적어도 알고리즘의 개념과 알고리즘의 속성 및 실행자가 무엇인지 이해해야하기 때문입니다. 특히 이것은 정보의 올바른 처리에 필요한 알고리즘의 컴파일과 관련이 있습니다.
가장 간단한 예는특정 주제에 대한 사용자 설명서. 비전문적으로 컴파일 된 경우이 경우 사용자는 개체를 조작하거나 작업하는 방법을 배우지 못하는 것이 잘못 될 수 있으므로 개체를 간단히 부술 수 있습니다. 심각한 가정 기술에 대해 이야기하고 있습니다.
많은 사람들이 정말 아무것도 없다고 말할 것입니다완성 된 장치에 대한 지침을 컴파일하는 것은 어렵지만 실제로는 그렇지 않습니다. 실제로는 대부분의 사람들이 다른 사람에게 방법을 설명하는 것보다 스스로 무언가를하는 것이 훨씬 쉽기 때문입니다.
예를 들어 거의 모든 학생이휴대 전화뿐만 아니라 휴대 전화에 포함 된 모든 기능을 사용하며 매우 간단하고 직관적 인 것 같습니다. 그러나 실제로이 장치를 평생 손에 든 적이없는 사람에게 휴대 전화를 사용하는 방법을 설명하는 것은 그렇게 쉽지 않습니다. 심지어 용의자. 이 상황에서 알고리즘의 개념과 알고리즘의 속성에 따라 모든 것을 설명하기가 어려울 것입니다. 일련의 작업을 이해할 수 없으며 장치의 정상적인 작동에 필요한 작업을 수행 할 수 없습니다.
어떤 어려움이 발생할 수 있습니까?
예를 들어 수행 방법을 고려하십시오.원칙적으로 아무것도 알지 못하는 일부 로봇의 차를 양조하는 알고리즘이며 그에게 작업에 대한 본격적인 정보 소스는 알고리즘입니다. 개념, 유형, 속성-우리 모두는 이것을 알고 있지만 대부분의 사람들에게 그러한 알고리즘의 정신 모델은 대략 다음과 같습니다.
- 컵을 가져 가세요.
- 차를 넣으세요.
- 설탕을 넣으십시오.
- 끓는 물을 붓는다.
- 휘젓다.
그러나 실제로는 로봇이 상식이 없기 때문에 이러한 알고리즘을 실행하는 것은 거의 불가능하며이 전체 절차는 최소한의 정보 집합입니다.
행동의 정확성은 알고리즘의 기초입니다
개념을 고려할 때 이해해야 할 주요 사항알고리즘과 알고리즘의 속성-행동의 정확성, 로봇은 처음에 컵을 어디에서 가져와야하는지, 어떤 컵을 가져와야하는지조차 모르기 때문에 컵을 가져가더라도 손에 쥐게됩니다. , 그는 그것을 테이블에 놓을 명령이 없었기 때문에. 이제 그는 차를 넣을 필요가 있지만 다시 손으로 할 수 있거나 숟가락으로 할 수 있지만 양을 알아야합니다. 따라서 알고리즘을 구성하는 단계에서도 해결해야 할 다양한 문제가 많이 나타납니다.
어떻게 보입니까?
물론 알고리즘의 개념과알고리즘의 특성에 따라 정확한 설명은 거의 무한정 형성 될 수 있지만이 상황에서는 다음과 같은 일련의 작업이 최적입니다.
- 찬장에 "Working"이라고 적힌 컵을 가져 가십시오.
- 컵을 식탁에 거꾸로 놓습니다.
- 냉장고 오른쪽에있는 캐비닛에서 "설탕"과 "차"라는 단어가있는 용기를 꺼내 컵 옆에있는 테이블 위에 놓습니다.
- 찬장에서 티스푼을 가져옵니다.
- "Tea"라고 표시된 용기에서 1 티스푼을 컵에 붓고 "Sugar"라고 표시된 용기에서 2 티스푼을 붓습니다.
- 주전자를 켜십시오.
- 주전자가 끓을 때까지 기다린 다음 2/3가 채워질 때까지 물을 컵에 붓습니다.
- 30 초 동안 티스푼으로 액체를 컵에 골고루 저어줍니다.
따라서 알고리즘의 개념을 고려하고각 작업이 수행되는 알고리즘의 속성과 다른 많은 요소를 통해 최적의 작업 시퀀스 구성에 도달 할 수 있습니다. 위의 알고리즘조차 완벽하다고 할 수 없으며 로봇이 많은 것을 알고 있다는 것을 제공하지만이 예제를 통해서도 어릴 적부터 여러분과 제가 아주 잘 알고있는 특정 것들을 실제로 설명하는 것이 얼마나 어려운지 이해할 수 있습니다.
무엇을 알아야합니까?
먼저 그 전에 메이크업 방법알고리즘을 사용하려면 특정 작업의 성능을위한 초기 조건이 무엇인지 결정해야하며, 무엇을 얻어야하는지도 알아야합니다. 알고리즘 자체는 이미 초기 정보에서 특정 결과로 이어지는 특정 문제를 해결하기위한 최종 작업 시퀀스입니다. 어쨌든 행동 알고리즘 개발의 우선 순위는 사람에게 있으며 위성, 로봇, 컴퓨터, 고급 가전 제품 및 최근에는 특정 장난감과 같은 다양한 사람 또는 모든 종류의 장치가 수행하는 방법을 배웠습니다. 그들은 이러한 행동의 실행에 관여합니다.
역사
Al-Khorezmi는 최초의 사람입니다알고리즘의 개념과 알고리즘의 속성을 정의했습니다. 이 개념은 더 넓은 의미를 부여받은 특정 시간 후에 대중 캐릭터를 획득했으며 특정 행동에 대한 정확한 규칙을 결정하기 시작했습니다. 오늘날이 개념은 이미 많은 사람들이 정보학과 같은 과학의 가장 중요한 개념 중 하나로 인식하고 있으며, 그것 없이는 상상하기가 거의 불가능합니다.
Al-Khorezmi 자신은 AD 9 세기에 살았고그의 산술 작업을 설명하는 원래 아랍어 원본이 손실되었지만 서유럽이 결국 10 진수 위치 번호 시스템과 공연의 기본 규칙에 익숙해 질 수 있었던 번역이 있습니다. 다양한 산술 연산.
과학자는 다음과 같은 규칙을 보장하기 위해 노력했습니다.그에 의해 공식화되었고, 모든 문맹자에게 매우 이해할 수있었습니다. 아직 본격적인 수학적 상징이 없었던 한 세기에 이것을 달성하는 것은 극히 어려웠지만, 과학자는 그의 글에서 궁극적으로 명확하고 동시에 엄격한 구두 처방을 달성 할 수있었습니다. 규정 된 작업을 회피하거나 특정 작업을 건너 뛸 수있는 기회를 갖습니다. ...
라틴어 번역에서 과학자의 작품은Algorizmi Said라는 유일한 책. 시간이 지남에 따라 사람들은 Algorizmi가 그러한 규칙의 작성자라는 사실을 점차 잊기 시작했으며 그 결과 규칙이 알고리즘이라고 불리기 시작했습니다. 따라서 점차 "알고 리즈 미가 말했다"가 변형되어 "알고리즘이 말한다"가되었습니다.