알고리즘 기본적인 것들에 대해

Ahn yi·2022년 9월 25일
0

java

목록 보기
16/22
  1. split에 대한 잘못된 접근
    문제점 : String[] arr = s.split(" ");
    해결 : String[] arr = s.split("");
    split에 대해 (" ")를 활용하여 이것을 다시 인덱스를 활용하여 char[] 에 할당하여 이중 for문을 돌려 사용하였다. 효율성 측면에서 문제도 되었으며, 오랜 시간 고민하다가 split.("") 도 가능하다는 것을 알게되어 한 차례 고비가 넘어갔다.

  2. String equals
    문제점 : if(arr[i] == " ")
    해결 : if(arr[i].equals(" "))
    split으로 오랜시간 고민을 해서인지(샤워 후 바로 해결) 모르지만 기본적인 부분에서 문제에서 오랜시간을 투자했다.
    우선 내가 수정한 후에 알고있는 내용으로는 java의 경우 '=='이 데이터의 주소값을 비교하므로 항상 false의 값이 나온다. 그래서 eqauls로 문자열 자체를 비교하여 true를 반환 하여야한다.
    사소하다면 사소하지만 중요한 것이므로, java 기본기 공부의 필요성을 느꼈다.

프로그래머스 알고리즘 문제가 굉장히 많은데 목표는 1주일 내에 40문제 완료이다. 오늘의 목표치는 달성하였지만 알고리즘은 점점 어려워 질거라 생각한다. 하지만 푸는 만큼 성장하는것을 느끼고 있는 중이라 생각되므로 최대한 진행할 예정이다. 문제를 해결하고 다른 사람의 풀이를 보는것도 공부가 잘 되어가고 있는거 같다. 풀이 댓글 중에 기억에 남는 댓글이 '자바를 제대로 이해하고 풀이한다' 라는 댓글을 보고 JAVA의 끝없음을 다시 한번 깨달았다. 그리고 이해가 되는 풀이도 있지만 생소한 풀이 특히, 창의적인 풀이를 보고 놀란 적이 한두번이 아닌거 같다. 창의적인 사고를 기르도록 노력해보겠지만, 힘들다면 꾸준함으로 나를 자극시켜야 한다!

profile
소통을 잘하고싶은 백엔드 개발자

0개의 댓글