[프로그래머스 | 파이썬 / 자바스크립트] [1차] 뉴스 클러스터링(2018 KAKAO BLIND RECRUITMENT/ level 2)
🐍 파이썬 | re 모듈
정규식을 사용하기 위한 모듈
findall(정규식 패턴, 문자열)
정규식 패턴에 맞는 문자열을 모두 찾아서 리스트로 반환
🐍파이썬| Count 객체
중복된 데이터가 저장된 배열을 인자로 넘기면 각 원소가 몇 번씩 나오는지 저장된 객체를 반환
Counter(["a", "b", "c", "a", "a", "b"])
# Counter({'a': 3, 'b': 2, 'c': 1})
참고: https://www.daleseo.com/python-collections-counter/
🐥 자바스크립트 | substr()
문자열에서 특정 위치에서 시작하여 특정 문자 수 만큼의 문자들을 반환하는 메서드
str.substr(start[, length])
- start: 추출하고자 하는 문자들의 시작 위치
- length: 추출할 문자들의 총 갯수
[프로그래머스 | 파이썬 / 자바스크립트] 이진수 더하기(코딩테스트 입문/ level 0)
🐍 파이썬 | int(value, base)
base에 진법(범위: 2 ~ 36)을 입력할 수 있다. 입력하지 않을 경우 기본으로 10이 넘어간다.
🐥 자바스크립트 | parseInt(string, radix)
- radix (Optional)
string의 진수를 나타내는 2부터 36까지의 정수. 기본 값은 10이 아님에 주의. Number 자료형이 아닌 경우 Number로 변환
🐥 자바스크립트 | toString(radix)
숫자 및 BigInts의 경우 toString()은 선택적으로 기수(radix)를 매개변수로 취한다. 기수의 값은 최소 2부터 36까지이다.
[프로그래머스 | 파이썬 / 자바스크립트] 대충 만든 자판(연습문제/ level 1)
🐍 파이썬 | for-else문
for문이 break 등으로 중간에 빠져나오지 않고 끝까지 실행됐을 경우 else문 실행
[프로그래머스 | 파이썬 / 자바스크립트] 주차 요금 계산(2022 KAKAO BLIND RECRUITMENT/ level 2)
🐍 파이썬 | key를 기준으로 딕셔너리 정렬하기
- sorted() 함수 사용
dic = {'0000': 14600, '5961': 5000, '0148': 34400}
newD = sorted(dic.items())
print(newD)
# [('0000', 14600), ('0148', 34400), ('5961', 5000)]
# items() 함수는 key-value 쌍이 튜플 형태로 구성된 리스트를 반환한다.
(참고:https://tinyurl.com/2jr73pop)
🐍 파이썬 | 딕셔너리 defaultdict
일반적인 딕셔너리의 경우, 딕셔너리에 존재하지 않는 key에 대해 접근할 경우 keyError가 발생한다. 반면 defaultdic의 경우 key값이 존재하지 않아도 default값을 줄 수 있어 에러가 발생하지 않는다.
(참고: https://tinyurl.com/2l6vytxa)
[프로그래머스 | 파이썬] 더 맵게(힙(Heap)/ level 2)
🐍 파이썬 | heapq 모듈
데이터를 정렬된 상태로 저장하기 위해서 사용하는 파이썬 내장모듈, 기본적으로 최소힙
- heapify(): 기존 리스트를 힙으로 변환
- heappush(힙 리스트, 힙에 push할 원소): 힙에 원소를 추가
- heappop(힙 리스트): 힙에서 가장 작은 원소 삭제
(참고: https://www.daleseo.com/python-heapq/)
파이썬의 heapq 모듈로 힙 자료구조 사용하기
Engineering Blog by Dale Seo
www.daleseo.com
[프로그래머스 | 파이썬 / 자바스크립트] 과일 장수(연습문제/ level 1)
🐥 자바스크립트 | at()
- 정수 값을 받아, 배열에서 해당 값에 해당하는 인덱스의 요소를 반환하는 메서드.
- 양수와 음수 모두 지정할 수 있고, 음수 값의 경우 배열의 뒤에서부터 인덱스를 센다.
🐥 자바스크립트 | slice()
객체 참조를 새 배열로 복사, 얕은 복사이며 기존 배열을 대체하지 않는다.
[프로그래머스 | 파이썬 / 자바스크립트] [3차] 압축(2018 KAKAO BLIND RECRUITMENT/ level 2)
🐥 자바스크립트 | fromCodePoint()
자바스크립트 아스키코드➡문자 변환
🐥 자바스크립트 | 객체에 특정 키(속성)가 존재하는지 확인하는 방법
https://leftday.tistory.com/81
자바스크립트 - 객체에 특정 키(속성)가 존재하는지 확인하는 방법
중괄호 {} 로 된 자바스크립트 객체에서 키를 찾는 방법은 Object 의 keys 사용, key in Object 활용 그리고 hasOwnProperty를 사용하는 방법이 있습니다. 자바스크립트 키 확인 방법 자바스크립트를 이용하
leftday.tistory.com
🐥 자바스크립트 | 문자열 자르기
[JavaScript] 문자열 자르기 (substr, substring, slice)
자바스크립트에서 문자열을 자르기 위해서는 substr(), substring(), slice() 함수를 사용하면 된다. 문자열을 뒤에서부터 자르기 위해서는 slice() 함수를 사용하면 효율적이며 타 언어의 Right 함수와 비
gent.tistory.com
🐥 자바스크립트 | reduce 활용
https://www.zerocho.com/category/JavaScript/post/5acafb05f24445001b8d796d
https://www.zerocho.com/category/JavaScript/post/5acafb05f24445001b8d796d
www.zerocho.com
[프로그래머스 | 파이썬 / 자바스크립트] 겹치는 선분의 길이(코딩테스트 입문/ level 0)
🐥 자바스크립트 | reduce 활용
return line.reduce((a, c) => c > 1 ? a + 1 : a, 0)
현재 값이 1보다 크면 누적값+1을 수행하고, 1보다 작으면 누적값에 아무것도 더하지 않는다.
🐥자바스크립트 | for문 생략
https://seoyun-is-connecting-the-dots.tistory.com/46
[자바 프로그래밍] 19. 반복문 - for문
💡 for 문 for 문의 문장들은 생략이 가능 초기화식 생략: 이미 이전에 값이 초기화되어 for 내부에서 값을 지정할 필요가 없는 경우 조건식 생략: 반복 수행에 대한 조건이 수행문 내부에 있는 경
seoyun-is-connecting-the-dots.tistory.com
[프로그래머스 | 파이썬 / 자바스크립트] 덧칠하기(연습문제 / level 2)
1. 빈 배열 체크
🐍 파이썬
🐥자바스크립트while(section) #section 내 원소가 존재하면 true, 원소가 없으면 false
// while(section) 동작하지 않는 코드 while(section.length > 0) //배열 길이를 이용해 빈배열 체크. 정상동작하는 코드
2. a <= x < b
🐍 파이썬
e <= section[0] < e+m #문제없이 동작한다.
🐥자바스크립트
// e <= section[0] < e+m 동작하지 않는 코드 e <= section[0] && section[0] < e+m //이렇게 수정해야 한다.
[프로그래머스 | 파이썬 / 자바스크립트] [3차] 파일명 정렬(2018 KAKAO BLIND RECRUITMENT / level 2)
🐍 파이썬 | sort 람다함수
https://velog.io/@aonee/Python-%EC%A0%95%EB%A0%AC-sort-sorted-reverse
[Python] 정렬 문법 sort() sorted() reverse
velog.io
import re
def solution(files):
a = sorted(files, key=lambda file : int(re.findall('\d+', file)[0]))
b = sorted(a, key=lambda file : re.split('\d+', file.lower())[0])
return b
🐍 파이썬 | 정규표현식
- '\d+' : 하나 혹은 그 이상 연결된 숫자
- 정규표현식 정리 블로그: https://tinyurl.com/2g2omnte
🐍 파이썬 | re모듈
findall(패턴, 문자열, 플래그)
문자열 안의 패턴에 맞는 케이스를 전부 찾아서 리스트로 반환
참고: https://brownbears.tistory.com/506
🐥 자바스크립트 | parseInt와 isNaN의 차이점 & isNaN함수 사용 시 주의할 점
💡 parseInt와 isNaN의 차이점
1️⃣ isNaN takes an integer as an argument - therefore JS converts "" to 0
(isNaN은 정수를 인수로 가진다. - 따라서 인수의 ""(빈 문자열)은 0으로 취급되어 false가 리턴된다.)
2️⃣ parseInt takes a string as an argument - therefore an empty string is not a number
(parseInt는 string을 인수로 가진다 - 따라서 인수의 ""(빈 문자열)은 숫자로 취급되지 않는다.)
출처: https://stackoverflow.com/questions/8271836/isnan-vs-parseint-confusion
💡 isNaN함수 사용시 주의할 점isNaN 함수의 인수가 Number 형이 아닌 경우, 그 값은 먼저 숫자로 강제됩니다. 결과값은 그 뒤에 NaN인지 결정하기 위해 테스트됩니다. 따라서 숫자 형으로 강제된 결과 유효한 비NaN 숫자값(특히 강제될 때 숫자값이 0 또는 1을 주는 빈 문자열 및 boolean 원시형)이 되는 비숫자의 경우, "false" 반환값은 예기치 않을 수 있습니다;//isNaN 단독 사용 시 console.log(isNaN(" ")); // false console.log(isNaN(".")); // true console.log(isNaN("number")); // true console.log(isNaN("2.19")); // false console.log(isNaN("")); // false console.log(isNaN(null)); // false //parseInt로 감싼 경우 console.log(isNaN(parseInt(" "))); // true console.log(isNaN(parseInt("."))); // true console.log(isNaN(parseInt("number"))); // true console.log(isNaN(parseInt("2.19"))); // false console.log(isNaN(parseInt(""))); // true console.log(isNaN(parseInt(null))); // true
(출처: https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/isNaN)
(추가로 참고하면 좋을 블로그: https://mygumi.tistory.com/335)
🐥 자바스크립트 | 정규표현식
정규표현식 참고 블로그: https://heropy.blog/2018/10/28/regexp/
정규표현식, 이렇게 시작하자!
매일 쓰는 것도, 가독성이 좋은 것도 아니지만, 모르면 안되는 정규표현식. 저는 이렇게 공부하기 시작했습니다! (자바스크립트를 기준으로 설명합니다)
heropy.blog
🐥 자바스크립트 | match()
문자열이 정규식과 매치되는 부분을 검색하는 메서드
🐥 자바스크립트 | localeCompare()
참조 문자열이 정렬 순으로 지정된 문자열 앞 혹은 뒤에 오는지 또는 동일한 문자열인지 나타내는 수치를 반환하는 메서드
localeCompare(compareString)
localeCompare(compareString, locales)
localeCompare(compareString, locales, options)
매개변수
- compareString: referenceStr가 비교되는 문자열
- locales: 기준 언어(독일어, 스웨덴어 등...)
- options: localeCompare()이 제공하는 결과를 options를 통해 사용자 정의 가능
반환 값
compareString 전에 referenceStr가 위치하는 경우 음수, compareString 후에 referenceStr가 위치하는 경우 양수, 동등할 경우 0
'Problem Solving' 카테고리의 다른 글
[프로그래머스|파이썬] 옹알이 (1) (코딩테스트 입문/level 0) (0) | 2023.04.28 |
---|---|
2023.02.22 ~ 2023.02.25 코딩테스트 이론 정리 (0) | 2023.03.07 |
2023.02.19 ~ 2023.02.21 코딩테스트 이론 정리 (0) | 2023.02.26 |
이코테 2021 강의 파이썬 문법 (헷갈리는 부분만 정리) (0) | 2022.06.23 |
알고리즘 사이트 모음 (0) | 2021.07.28 |