[프로그래머스] 기초 코딩테스트 참고 [Python]

원준·2023년 4월 18일
0

코딩 테스트

목록 보기
1/18

알고리즘 공부하면서 공부되었던 부분을 가져왔다.

1. 정렬 후 중앙 값 들고오기

sorted(array)[len(array) // 2]

2. 한줄 for str 적용

  • 배열로 작성되어있다면 전부 합친다음, ''으로 인해 String으로 변환된다.
''.join(i*n for i in my_string)

3. 문자열 자르기 (특정 문자를 찾아서 변경하는 함수)

my_string.replace(letter, '')

4. String을 배열 처럼 가져와서 뒤에 if를 활용해 각각의 i들을 비교한다.

  • i 가 aeiou 중에 없는 것들을 모아 join으로 String으로 변환한다.
"".join([i for i in my_string if not(i in "aeiou")])

5. for의 2증가 값을 가지는 방법

  • 1부터 n+1까지 2의 크기로 증가한다. (기본 1이지만 3번째 인자에 증가 값을 넣을수 있다.
[i for i in range(1, n+1, 2)]

6. 배열로 있던 변수들을 집합(객체) 형태로 변경하여 두 변수의 교집합을 가지고 오는 방법이다.

len(set(s1)&set(s2))

7. 숫자를 문자열로 변환해서 for로 돌린다.

  • for로 돌리면서 int로 형변환을 하며, sum으로 전부 더한다.
sum(int(i) for i in str(n))

8. 특정 10자리 이상 숫자를 문자로 변경하는것 (10 -> 1과 0을 들고옴)

  • 아스키코드 활용
''.join([chr(int(i)+97) for i in str(age)])

9. 문자열안에 문자열을 찾는 방법

  • str1 안에 str2가 있다면 1을 넣으며, 아니면 2를 넣는다.
1 if str2 in str1 else 2

10. **은 제곱인데 0.5를 대입하면 제곱근이 된다.

  • 1/2니까
i**0.5

11. 문자 대소문자 동시에 전체 변경

my_string.swapcase()

12. 비트 연산자... 개쩐다

  • 2의 제곱/곱셈 으로 변경이 될때 비트연산자를 하면 편하다.
n << t

13. 문자열에서 숫자 판별 함수

c.isdigit()

14. max(숫자, 숫자) | min(숫자, 숫자)

  • max, min 함수 해당 숫자 및 배열들을 비교해 큰 값, 작은 값을 반환합니다.
  • 배열을 통해 하나의 변수를 사용해도 되고, 비교하고 싶은 여러 변수를 활용해도 된다.
 max(list[])
 min(list[])

 max(list[0], te_list[0])

15. 특정 문자열에서 2개의 문자만 서로 위치를 교환함.

  • list를 사용해서 변경한다.
  • 다른 언어에서는 한개의 더미 변수를 생성해야하지만, Python은 사용하지 않아도 된다.
	s = list(my_string)
      s[num1],s[num2] = s[num2],s[num1]
      return ''.join(s)
profile
공부해보자

0개의 댓글