코딩 공부
코딩 인터뷰 퀘스천 완전 분석 - Move Zeroes 본문
[LeetCode] [Easy] 283. Move Zeroes
leetcode.com/problems/move-zeroes/
Move Zeroes - LeetCode
Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.
leetcode.com
배열 안에 있는 0 뒤로 보내기
제가 설명을 잘 못해서 코드로 보는게 편할지도 모르겠네요 ㅋㅋㅋ
앞쪽부터 0을 무시하면서 나머지 숫자로 덮어씌우고 나중에 0으로 채워줍니다.
0이 나올경우를 대비해서 포인터가 필요합니다.
예) [1, 0, 3, ...] 포인터는 index 0에서 시작합니다.
Loop 1: 첫번째 숫자는 0이 아니기때문에 포인터가 가리키는 자리에 넣어둡니다. 똑같은 자리라 변화가 없죠. 포인터는 하나 더해줍니다.
Loop 2: 두번째 자리의 숫자는 0이므로 아무것도 하지 않고 다음 for loop으로 갑니다. 포인터는 제자리(index 1)에 머물러있죠.
Loop 3: 세번째 loop에서는 세번째 자리가 0이 아닌 숫자이기 때문에 포인터가 가리키는 자리에 넣어줍니다. [1, 3, 3, ...] 이 단계에서는 3이 두번있지만 포인터는 세번째 자리를 가리키고 있기때문에 다음번 loop에서 덮어씌워집니다
이렇게 loop을 다 돌고 나서 포인터가 가리키는 자리부터 배열 마지막까지 0으로 채워주면 됩니다. 배열을 한번 돌면서 0을 스킵했기 때문에 for loop 이후 포인터는 0을 스킵한 만큼 오르지 않았기 때문
요건 좋은 결과 값이 나와서 이정도까지만 하겠어요
'Coding' 카테고리의 다른 글
코딩 인터뷰 퀘스천 완전 분석 - Find Lucky Integer in an Array (0) | 2020.10.13 |
---|---|
코딩 인터뷰 퀘스천 완전 분석 - Shuffle the Array (0) | 2020.10.13 |
코딩 인터뷰 퀘스천 완전 분석 - Add Strings (0) | 2020.10.12 |
코딩 인터뷰 퀘스천 완전 분석 - Valid Parentheses (0) | 2020.10.11 |
코딩 인터뷰 퀘스천 완전 분석 - Two Sum (0) | 2020.10.10 |