알고리즘 데이터분석 문제를 풀었다. 1번 2번은 그나마 무난히 잘 넘어가게 풀었다만, 3번부터가 나에게 고비였다 . 코플릿 3번의 작성된 수도코드를 적자면 ,
// 주어진것 actions 행동한 순서가 들어있음., (string과 num타입의 배열,)
// start 마지막에 접속한 페이지와 방문했던 페이지들의 스택을 반환.(방문한 페이지기록 반환)
// (string 타입, 시작 페이지를 나타내는 현재좁석 대문자 알파벳.)
// Array 타입으로 리턴함.
// 새로운 페이지로 접속한다. ==> 새로운 페이지 접속은 알파벳 대문자. 현재 페이지와 다름.
// 뒤로가기 버튼을 누름 '-1' 로 표기
// 앞으로 가기 버튼을 누를 경우 '1로 표기'
// 1. 새로운 페이지로 접속한다. ==> 새로운 페이지 접속은 알파벳 대문자. 현재 페이지와 다름.
// 1. prev 스택을 만든다.
// 2. 원래있던 페이지를 넣는다.
// 3. 빈 next 스택을 만든다.
// 2. 뒤로가기 버튼을 누름 '-1' 로 표기
// 1. next 스택에 원래있던 페이지를 넣는다.
// 2. prev 스택의 top에 있는 페이지로 이동
// 3. prev 스택의 마지막값을 뽑는다.
// 3. 앞으로 가기 버튼을 누를 경우 '1로 표기'
// 1. 원래있던 페이지를 prev 스택에 넣는다.
// 2. next 스택의 top있는 페이지로 이동한다.
// 3. 그리고 next 스택의 마지막값을 뽑는다.
// 4. 모두 비활성화 되었다.
// 1) 스택에 push하지 않는다.
이렇다. 문제 파악할겸 어떻게 작성해야할지 천천히 적었는데,
첫번째 부터 난관이었다. 뭔가 수도코드 로직은 적을법한데, 손으로 메소드를 적기엔 매우 난관이다. 그렇다 '수도코드'로 모든것이 다 해결되는것이 아닌것이다.
로직과 어떻게 쓴다 개념은 알듯한데, '설계'부분이 매우 부족함을 느꼈다.
문맥이외의 것들이 엄연히 존재하지만 수도코드엔 없다. 너무 수도코드에 의지한것이다.
수도코드에 있는것만으로 그대로 적으려 하다보니 놓치는 부분이 있는것이다. 꼭 수도코드에 못만드는 부분..
연결이 되지않고 못찾다보니 끊김.. 수도코드와 코드사이에 나온다. 어느정돈이제 수도코드에 자유로워 져야할 때인듯 싶다. 예를 들면 수도코드는 9줄일수도있는데 실제 작성한 코드는 20줄이 될수도 있는것이다. 숨어있는 문맥들 또한 엄연히 존재하고, 그것들을 찾아서 연결을 해주는 방안이 필요하다..
내가 완전 못하는것이라 생각은하였다. 사실.. 하지만 그것이 아니란 생각도 든다..
'연결 되지않고 못찾은 끊김..', 많이 코딩을 작성해봐야 하는데 그것이 내가 부족한것이 원인인듯 싶다. 뭔가 너무 코딩에 사실 내가 겁이먹었단 사실이든다. 정말 생각해보니 그렇다.
지난 HA문제 풀때 이후로.. 그렇다. 수도코드를 작성하지않는 덜 의지하는 연습이 필요할듯싶다.. 어느정도 절충이 필요하다. 하지만.. 수도코드의 제일 장점은 바로 '문제파악' 이 일목요연하다는것이다.