header_logo

COLDSURF BETA

#Typescript

#Tuple

Written by Paul

๋“ค์–ด๊ฐ€๋ฉฐ

์•ž์„œ infer๋ฅผ ํ†ตํ•ด ๋‚ด๋ถ€ ํƒ€์ž…์„ ์ถ”์ถœํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ดํŽด๋ดค์Šต๋‹ˆ๋‹ค.
์ด๋ฒˆ์—๋Š” ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ์˜ ๋˜ ๋‹ค๋ฅธ ํฅ๋ฏธ๋กœ์šด ๊ธฐ๋ฒ•์ธ tuple counting์„ ์•Œ์•„๋ด…๋‹ˆ๋‹ค.
์ด ๊ธฐ๋ฒ•์€ ๋ง ๊ทธ๋Œ€๋กœ ํŠœํ”Œ์˜ ๊ธธ์ด(T['length'])๋ฅผ ์ด์šฉํ•ด ์นด์šดํŒ…ํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.
์ด๊ฑธ ์ž˜ ์“ฐ๋ฉด ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ์—์„œ ๋ง์…ˆ, ๋บ„์…ˆ ๊ฐ™์€ ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ด๋‚˜ ์žฌ๊ท€ ๊นŠ์ด ์ œ์–ด ๊ฐ™์€ ๊ณ ๊ธ‰ ํŒจํ„ด์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ๋ณธ ์•„์ด๋””์–ด

  • []['length'] = 0
  • [1]['length'] = 1
  • [1, 1]['length'] = 2
์ฆ‰, ํŠœํ”Œ์— ์š”์†Œ๋ฅผ ๊ณ„์† ์ถ”๊ฐ€ํ•˜๋ฉด ๊ธธ์ด๋ฅผ ํ†ตํ•ด ์ •์ˆ˜ ์นด์šดํŠธ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

1. ํŠœํ”Œ ๋นŒ๋”

๋จผ์ € ํŠน์ • ๊ธธ์ด์˜ ํŠœํ”Œ์„ ๋งŒ๋“œ๋Š” ์œ ํ‹ธ๋ฆฌํ‹ฐ:

2. ๋ง์…ˆ ๊ตฌํ˜„

ํŠœํ”Œ์„ ํ•ฉ์น˜๋ฉด ๊ธธ์ด ํ•ฉ = ๋ง์…ˆ์ด ๋ฉ๋‹ˆ๋‹ค.

3. ๋บ„์…ˆ ๊ตฌํ˜„

๋ถ€๋ถ„ ์ง‘ํ•ฉ ํŠœํ”Œ์„ ์ œ๊ฑฐํ•ด์„œ ๋บ„์…ˆ๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

4. ๊นŠ์ด ์ œ์–ด (์žฌ๊ท€ ํƒˆ์ถœ)

์ด์ œ ์ด ์นด์šดํŒ… ๊ธฐ๋ฒ•์„ infer์™€ ๊ฒฐํ•ฉํ•˜๋ฉด โ€œ๋ช‡ ๋ฒˆ์ด๋‚˜ ์žฌ๊ท€ํ• ์ง€โ€๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • C์˜ ๊ธธ์ด๋ฅผ ์นด์šดํ„ฐ๋กœ ์‚ฌ์šฉ
  • ๋ชฉํ‘œ ๊นŠ์ด(D)์— ๋„๋‹ฌํ•˜๋ฉด ์žฌ๊ท€ ์ข…๋ฃŒ
  • [..., unknown]์€ ๋‹จ์ˆœํžˆ ๊ธธ์ด๋ฅผ +1 ํ•˜๊ธฐ ์œ„ํ•œ ๋”๋ฏธ ๊ฐ’

5. ๋” ์‘์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ๋“ค

  • ๋น„๊ต ์—ฐ์‚ฐ: A < B ๊ฐ™์€ ๊ฒƒ๋„ BuildTuple์„ ์ด์šฉํ•ด ๊ฐ€๋Šฅ
  • ๋ฐฐ์—ด ์Šฌ๋ผ์ด์Šค: ๊ธธ์ด ๊ธฐ๋ฐ˜์œผ๋กœ ๋ถ€๋ถ„ ๋ฐฐ์—ด ์ถ”์ถœ
  • ์ œ๋„ˆ๋ฆญ ์•ˆ์ „ ์žฅ์น˜: ๋ฌดํ•œ ์žฌ๊ท€ ๋ฐฉ์ง€

์ •๋ฆฌ

  • tuple counting์€ ํŠœํ”Œ์˜ ๊ธธ์ด๋กœ ์ •์ˆ˜๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๊ธฐ๋ฒ•
  • ์ด๋ฅผ ํ†ตํ•ด:
      1. ์‚ฐ์ˆ  ์—ฐ์‚ฐ (Add, Subtract)
      1. ๊นŠ์ด ์ œ์–ด (GoDeeper ๊ฐ™์€ ์žฌ๊ท€ ํƒˆ์ถœ)
      1. ๋น„๊ต ๋ฐ ๊ธฐํƒ€ ์ˆ˜ํ•™์  ์—ฐ์‚ฐ
        1. ์„ ํƒ€์ž… ์ˆ˜์ค€์—์„œ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Œ
  • infer์™€ ๊ฒฐํ•ฉํ•˜๋ฉด ์žฌ๊ท€์ ์œผ๋กœ ๋‚ด๋ถ€ ํƒ€์ž…์„ ํƒ์ƒ‰ํ•˜๋ฉด์„œ๋„ ์•ˆ์ „ํ•œ ์ œ์–ด๊ฐ€ ๊ฐ€๋Šฅ

๋งˆ๋ฌด๋ฆฌ

infer๊ฐ€ ํƒ€์ž…์˜ ๋‚ด๋ถ€๋ฅผ ์ถ”์ถœํ•˜๋Š” ๋ˆˆ์ด๋ผ๋ฉด,
tuple counting์€ ํƒ€์ž… ์‹œ์Šคํ…œ ์•ˆ์—์„œ ์‹œ๊ฐ„(ํšŸ์ˆ˜)์„ ์„ธ๋Š” ์‹œ๊ณ„๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ด ๋‘ ๊ฐ€์ง€๋ฅผ ํ•ฉ์น˜๋ฉด, TypeScript๋กœ ์ •์  ํƒ€์ž… ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ๊ฐ•๋ ฅํ•œ ๊ธฐ๋ฒ•๋“ค์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๐Ÿš€
ย 

ยฉ 2025 COLDSURF, Inc.

Privacy Policy

Terms of Service

Products