λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
Study/Java

[TIL] μˆœμ—΄κ³Ό μ‘°ν•©

by hong- 2022. 6. 4.

🫰🏻 μˆœμ—΄ Permutation

   - μˆœμ„œκ°€ μƒκ΄€μžˆλŠ” μš”μ†Œ n개 쀑에 r개λ₯Ό λ½‘λŠ” 경우의 수

   - nPr이라고 ν‘œν˜„ !

   - nPr = n ! / (n - r) !

예λ₯Ό λ“€μ–΄, [ 1, 2, 3 ] μ΄λΌλŠ” 3개의 λ°°μ—΄μ—μ„œ 2개의 숫자λ₯Ό λ½‘λŠ” 경우
  = 3P2 = 3 ! / 1 !
  = 3 x 2 x 1 / 1 = 6
 [ 1, 2 ]
 [ 1, 3 ]
 [ 2, 1 ]
 [ 2, 3 ]
 [ 3, 1 ]
 [ 3, 2 ]

πŸ€™πŸ» μ€‘λ³΅μˆœμ—΄

  - μ„œλ‘œ λ‹€λ₯Έ n개의 μ›μ†Œ 쀑 쀑볡을 ν—ˆλ½ν•˜μ—¬ r개λ₯Ό λ½€μ•„μ„œ λ‚˜μ—΄ν•˜λŠ” 것

  - nπr둜 ν‘œν˜„ !

  - nπr = n의 r제곱


🫰🏻 μ‘°ν•© Combination

   - μˆœμ„œμ— 상관없이 μš”μ†Œ n개 쀑에 r개λ₯Ό λ½‘λŠ” 경우의 수

   - nCr이라고 ν‘œν˜„

   - nCr = n ! / r ! * (n - r) !

예λ₯Ό λ“€μ–΄ [ 1, 2, 3 ] 쀑 λ°°μ—΄μ—μ„œ 2개의 수λ₯Ό μˆœμ„œ 없이 λ½‘μœΌλ©΄
 = nCr = n! / r! * (n-r)!
 = 3! / 2! * 1! = 3 x 2 x 1 / 2 x 1 x 1 = 3
 [ 1, 2 ]
 [ 1, 3 ]
 [ 2, 3 ]

🫰🏻 νŒ©ν† λ¦¬μ–Ό Factorial : !

   - nμ—μ„œλΆ€ν„° 1μ”© κ°μ†Œν•˜μ—¬ 1κΉŒμ§€μ˜ λͺ¨λ“  μ •μˆ˜μ˜ κ³±


🀝🏻 μ •κ·œν‘œν˜„μ‹

  - λ¬Έμžμ—΄μ—μ„œ νŠΉμ •ν•œ κ·œμΉ™μ— λ”°λ₯Έ λ¬Έμžμ—΄ 집합을 ν‘œν˜„ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ˜λŠ” ν˜•μ‹ μ–Έμ–΄

 

  β–ͺ️ ^ : λ¬Έμžμ—΄μ˜ μ‹œμž‘

  β–ͺ️ $ : λ¬Έμžμ—΄μ˜ 끝

  β–ͺ️ . : μž„μ˜μ˜ ν•œ 문자

  β–ͺ️ * : λ¬Έμžκ°€ 0번 이상 λ°œμƒ

  β–ͺ️ + : λ¬Έμžκ°€ 1번 이상 λ°œμƒ

  β–ͺ️ ? : λ¬Έμžκ°€ 0번 ν˜Ήμ€ 1번 이상 λ°œμƒ

  β–ͺ️ [ ] : 문자의 μ§‘ν•© λ²”μœ„λ₯Ό λ‚˜νƒ€λƒ„

    → [0-9] : 숫자 0-9λ²ˆκΉŒμ§€ 

    → [a-z] : μ•ŒνŒŒλ²³ μ†Œλ¬Έμž a-zκΉŒμ§€

  β–ͺ️ { } : 횟수 λ˜λŠ” λ²”μœ„λ₯Ό 의미

  β–ͺ️ ( ) : μ†Œκ΄„ν˜Έ μ•ˆμ˜ 문자λ₯Ό ν•˜λ‚˜μ˜ 문자둜 인식

  β–ͺ️  | : or 쑰건

  β–ͺ️ \ : ν™•μž₯ 문자의 μ‹œμž‘

  β–ͺ️ \b : λ‹¨μ–΄μ˜ 경계

  β–ͺ️ \B : 단어가 μ•„λ‹Œ κ²ƒμ˜ 경계

  β–ͺ️ \A : μž…λ ₯의 μ‹œμž‘ λΆ€λΆ„

  β–ͺ️ \G : 이전 맀치의 끝

  β–ͺ️ \z : μž…λ ₯의 끝

  β–ͺ️ \Z : μž…λ ₯의 λμ΄μ§€λ§Œ μ’…κ²°μžκ°€ μžˆλŠ” 경우

  β–ͺ️ \s : 곡백문자

  β–ͺ️ \S : κ³΅λ°±λ¬Έμžκ°€ μ•„λ‹Œ λ‚˜λ¨Έμ§€ 문자

  β–ͺ️ \w : μ•ŒνŒŒλ²³μ΄λ‚˜ 숫자

  β–ͺ️ \W : μ•ŒνŒŒλ²³μ΄λ‚˜ 숫자λ₯Ό μ œμ™Έν•œ 문자

  β–ͺ️ \d : [0-9]

  β–ͺ️ \D : 숫자λ₯Ό μ œμ™Έν•œ λͺ¨λ“  문자