221012 java

늘숲·2022년 10월 12일
0

아침에는 역시 코드업문제풀이!!
배열에 숫자를 넣고 최대값을 구하는 문제이다.
포문을 한개만 쓰면 될 거 같은데
두번째는 2차원배열의 그리드에서 최대값을 찾는 것.
이건 중첩포문을 써야 할 거 같다.

일단 배열의 숫자를 넣고 최대값을 구하는 문제는
2행짜리 표를 만들고 o표기법으로 Max, Min은 O(n)의 시간이 든다.
최소한 한번은 다 순회를 해야하기 때문에 Max, Min은 O(n)의 시간이 든다는 말이다.
Map map = new HashMap(); -> O(1) 제일 빠름. 한번에 찾음.
O(Log N)
O(620만)
만약 N - 6,200,000
임시최대값을 다루는 변수를 지정하고,
포문으로 순회하면서 값을 비교하고 임시최대값이 해당 값보다 작을 때 해당 값을 임시최대값에 할당.
순회를 끝까지 하면서 반복하고 결국 임시최대값을 반환

강사님말로는 코드에 주석을 달라는 말은
코드를 보고 해석하는 고민을 안하려고 편히배우려고 하는게 아니냐고 하시지만
실상은 다르다.
실상은 사소한 문제로 인해 코드의 풀이진행을 따라가지 못하고 발목이 잡히는 경우다.
아무리 우둔하다 할 지언정 코드를 보고 고민해서 못따라갈 정도로 우둔하지는 않으며 고민하는 시간을 안쓰려고 할 정도로 게으르지 않다.
다만 사소한 에러로 인해 발목잡혀 따라가지 못해서 고민할 기회조차 주어지지 않는다는 점이 억울한 것이다.

지능이나 의지력 부족이 아니라, 잡기술이나 노하우가 부족한 것이다.

강사님이 단축키 알려주셨음 구글독에 있음

profile
발전, 그리고 숲

0개의 댓글