일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- Lesson3
- Java
- BC렌트
- FLEX5
- 벤쿠버렌트
- 자바
- binaray_gap
- database연결
- 벤쿠버 렌트
- 부산입국
- FK 설정
- Lesson2
- 캐나다워홀
- 설탕문제
- 레노보노트북
- 데이터의 무결성
- 엔테크서비스
- 외래키설정
- codility
- IntelliJ
- FIDO 환불
- 벤쿠버집구하기
- 파이도 환불
- QA엔지니어
- 언마운트
- 1463번
- 백준알고리즘
- Linux
- 프로그래머스
- 리눅스
- Today
- Total
목록전체 글 (200)
대충이라도 하자
*** 이 문제에서는 없지만, 심화로 나오면 더하는 행렬의 길이가 다를 수도 있기 때문에 그럴 경우에는 int g= Math.max(arr1[0].length, arr2[0].length) 이런 식으로 더 긴 걸 기준으로 만들면 된다.
*** 효율성 테스트는 통과를 하긴 했는데, 많이 나온 것 같다. 아닌가..? Leetcode는 내가 상위 몇 퍼센트 알려줘서 비교하기 좋았는데, 이거는 잘 판단하기는 힘든 듯..ㅜㅜ **** 다른 사람 풀이를 보니, 다들 list만들어 놓은 뒤에, 다시 배열에 집어넣어서 return을 해서 return 타입을 변경하지 않는 방식으로 했다. 속도나 용량 차이에서 큰 차이는 없는 듯하다.
*** 중요한 점은 배열 초기화!!! int[] answer 하고 나서 new int[개수]; 꼭 만들어줘야 함 *** 나는 일부러 숫자만큼을 일부러 배열에 넣었는데, 다른 사람들 보니 copyOfRange(배열, 시작순서, 끝순서)라는 API를 사용해서 구현했다. ***또한, sort의 라이브러리를 사용하지 않고 sort 메소드를 아예 구현한 사람도 있었음
*** int인 수를 String으로 변환해서 하나씩 잘라내면서 값을 더해도 되지만 더 간결하게 생각해봤다. ***하지만, 결국 int를 String으로 변환해서 해야할 가능성도 있기에 추가하자면, char 를 int로 변환하는 방법에는 Character.getNumericValue(char)도 있고 char -'0' 처럼 '0'을 빼주면 int형으로 변환 가능하다.
*** 해시라고 되어 있지만, 그냥 정렬해서 비교하는 걸로 코딩했다. 다른 사람 풀이를 보니, 해시맵을 이용해 아래처럼 구할 수도 있음!!!
***Array와 ArrayList의 차이점을 명확히 알아야 할 것 1. Array의 정렬은 Arrays.sort()이다. 하지만, ArrayList는 Collections.sort() 2. contains함수를 쓸 때, Array는 Arrays.asList(배열이름).contains(); ArrayList는 배열이름.contains()로 바로 찾을 수 있다! ***사실 시간 복잡도 때문에, 항상 이중반복문은 사용하기 꺼리는데, 다른 사람 코드도 보니 이중반복문 말고는 dfs를 사용한 것 같은데 길이가 100이하라서 이중반복문이 코드로 더 간단할 듯.... 혹시나, dfs 말고 이중반복문말고 코딩하신 분 있다면 댓글 남겨주실 수 있을까요...?
*** 맨처음에 단어 잘라서 배열에 넣고 for문 2번 돌리니까 역시나 시간!!! 시간!!! 그 다음에, 생각해보니 굳이 배열에 넣으면서 할 필요 없을 거 같아서 다르게 구성하니까 성공!!! *** 항상 놓치는 부분인데 String은 equals를 사용해주어야 하고, char은 그냥 == 단순비교하면 된다. 주소값 저장인지, 데이터 저장인지에 따라 다르기 때문!!! *** 대문자, 소문자 바꿔주려면 32를 기준으로 더하기 빼기 하기, 중요한 건 그냥 일반적으로 더해버리면 숫자값이 저장되기 때문에 꼭 (char)라던지 타입 변경해주는 게 필요하다. toUpperCase()나 toLowerCase()도 가능하지만, 여러 방식으로 연습해보자.
*** 첫번째 길이 조건에서 num != 4와 num !=6을 쓰려면 num != 4 && num !=6 사용하기 ( || 이 아니라 &&을 사용해주어야 한다. ) ***자바 정규표현식!!! 자바 API java.util.regex 패키지를 사용해야 함 ^[a-zA-Z]*$ : 문자만 ^[0-9]*$ : 숫자만 사용하는 방법은 String 타입의 s가 있다고 하면 s.matches("^[a-zA-Z]*$") 는 true가 나온다. 또는 boolean answer = Pattern.matches(s, "^[a-zA-Z]*$"); 이런 식으로 하면 answer = true가 나옴!!! ***또는!!! 아스키코드가 숫자는 48