Pseudo-code(의사 코드) 란
가짜의
-코드
로써, 알고리즘이 수행될 내용을 인간의 언어로 간략히 설명해 놓은것을 말한다.
1 |
|
- 나는 알고리즘 문제를 해결할때, 항상 의사 코드를 먼저 작성하고 구현에 들어간다.
- 의사 코드를 작성 하면서 설계를 90퍼센트 이상 마치고 구현에 들어간다.
- 구현할때는 진짜 노트에 써놓은 의사코드를, 실제 코드로만 변경시키는 작업을 한다.
- 의사 코드를 작성하면서 처음에 생각했던 논리에서 오류를 찾는 경우가 아주 많았다.
- 이 때문인지 한번에
AC
를 받는 경우가 많다.
- 이 때문인지 한번에
- 머릿속의 생각을 바로 코드로 옮기는것보다, 구현속도가 훨씬 빨랐다.
- 이건 개인차가 있을것이다.
- 나의 경우에는, 기능별로 함수를 하나씩 다 구현하는 스타일이라 그런것 같다.
- 의사 코드를 작성하면서 처음에 생각했던 논리에서 오류를 찾는 경우가 아주 많았다.
하지만 내가 짜는 의사코드는, 나만 알아볼 수 있게 쓰고 있었다.
- 의사코드는, 딱 이렇다할 정해진 양식이 없다.
- 그리고 알고리즘 문제를 혼자 풀때는, 나만 알아보아도 상관없다.
- 하지만 남들도 단번에 보고 쉽게 이해할 수 있는 의사코드를 작성하는 능력을 갖춘다면, 경쟁력이 되지않을까?
- 라는 생각이 들었다.
이를 위해서, 좀 더 정형화된 의사코드를 짜는 연습을 해보려고한다.
나만의 규칙을 몇가지 세웠다.
추상적인 표현, 추측이 필요한 표현은 절대 적지 않는다.
1 |
|
기능별로 나누어서 작성한다.
1 |
|
함수의 경우 매개변수의 이름을 명확히 한다.
1 |
|
일반적으로 쓰이는 프로그래밍 문법에 맞춰 작성한다
1 |
|
너무 세세히 작성하지 않는다
1 |
|
- 수도 코드 라인수가 실제 코드의 라인수에 육박함.
- 오히려 더 복잡해 보이는 역효과를 낳음.
- 반복문의 경우 범위가 민감하거나 하여, 세세해야 하는 파트만 작성한다.
1 |
|
1번 규칙
추상적인 표현을 절대 적지 않는다. 의 경우에 위반 되지만- 누군가에게 설명해야 하는 경우가 아니라면,
너무 나이브한 부분
은 개론 정도만 작성한다.
이 글은 계속 수정하며 보완할 예정입니다.
- 최초 작성일
2020-03-14
- 최종 수정일
2020-07-11