U E D R , A S I H C RSS

TAOCP/Basic Concepts

1. 1.1 Algorithms


1.1. •Œ๊ณ ๋ฆฌฆ˜ E(œ ด๋ฆฌ๋“œ˜ •Œ๊ณ ๋ฆฌฆ˜(Euclid's algorithm))

~cpp 
–‘˜  •ˆ˜ m๊ณผ nด ฃผ–ดกŒ„๋•Œ, ๊ทธ๊ฒƒ๋“ค˜ ตœ๋Œ€๊ณต•ฝˆ˜(greatest common divisor)
(m๊ณผ n„ ๋ชจ๋‘ ๋‚˜๋ˆ„๋Š” ๊ฐ€žฅ ฐ –‘˜  •ˆ˜)๋ฅผ ๊ตฌ•œ๋‹ค.
E1. [๋‚˜๋จธง€ ๊ตฌ•˜๊ธฐ] m„ nœผ๋กœ ๋‚˜๋ˆ„๊ณ  ๋‚˜๋จธง€๋ฅผ rด๋ผ •˜ž.(0 <= r < n)
E2. [๊ทธ๊ฒƒด 0ธ๊ฐ€?] r = 0 ด๋ฉด, •Œ๊ณ ๋ฆฌฆ˜€ ๋๋‚œ๋‹ค; nด ๋‹ตด๋‹ค.
E3. [„ด๊ธฐ] m <- n, n <- r œผ๋กœ „ ••œ๋‹ค, ๊ทธ๋ฆฌ๊ณ  E1๋‹จ๊ณ„๋กœ ๋Œ•„๊ฐ„๋‹ค.โ– 

~cpp 
Fig 1. •Œ๊ณ ๋ฆฌฆ˜ E˜ ˆœ„œ๋„

        |<------------------------------------------------------|
       โ†“                                                       |
--------------------          ------------------ •„๋‹ˆ˜ค   -------------
| E1.๋‚˜๋จธง€ ๊ตฌ•˜๊ธฐ |-------->( E2.๊ทธ๊ฒƒด 0ธ๊ฐ€? )-------->| E3.„ด๊ธฐ |
--------------------          ------------------          -------------
                                        |˜ˆ
                                       โ†“

m = 119 ™€ n = 544 ๊ฐ€ ฃผ–ดกŒ๋‹ค๊ณ  •˜ž
E1 ๋‹จ๊ณ„—„œ ‹œž‘. m„ nœผ๋กœ ๋‚˜๋ˆ„๋ฉด ๋ชซ€ 0ด๊ณ  ๋‚˜๋จธง€๋Š” 119ด๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ r <- 119
E2 ๋‹จ๊ณ„—„œ r โ‰  0 ด๋ฏ€๋กœ  šฉ๋˜ง€ •Š๋Š”๋‹ค
E3 ๋‹จ๊ณ„—„œ m <- 544, n <- 119
ด๊ฒƒœผ๋กœ ฒ˜Œ— m < n ์ด๋ฉด ํ•ญ์ƒ m๊ณผ n์ด ๊ตํ™˜๋œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค
šฐ๋ฆฌ๋Š” ๋‹คŒ๊ณผ ๊ฐ™€ ƒˆ๋กœšด ๋‹จ๊ณ„๋ฅผ ถ”๊ฐ€•  ˆ˜ žˆ๋‹ค(๊ผญ •„š”•˜„ •Š๋‹ค)

~cpp 
E0. [m >= n ธง€ ™•ธ•˜๊ธฐ] m < n ด๋ผ๋ฉด, m <-> n „ ๊ต™˜•œ๋‹ค

E1œผ๋กœ ๋Œ•„๊ฐ€„œ 544/119 = 4+68/119, ๊ทธ๋Ÿฌ๋ฏ€๋กœ r <- 68
๋‹ค‹œ E2๋Š”  šฉ๋˜ง€•Š๊ณ 
E3—„œ m <- 119, n <- 68
๋‹คŒˆœ™˜—„œ r <- 51, m <- 68, n <- 51
๋‹คŒ— r <- 17, m <- 51, n <- 17
๋งˆง€๋ง‰œผ๋กœ 51„ 17๋กœ ๋‚˜๋ˆ„—ˆ„๋•Œ, r <- 0, ๊ทธ๋Ÿฌ๋ฏ€๋กœ E2์—์„œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์ข…๋ฃŒ๋œ๋‹ค
119™€ 544˜ ตœ๋Œ€๊ณต•ฝˆ˜๋Š” 17ด๋‹ค


1.2. •Œ๊ณ ๋ฆฌฆ˜˜ 5๊ฐ€ง€ ค‘š”•œ Šนง•

1) œ •œ„(Finiteness)
•Œ๊ณ ๋ฆฌฆ˜€ œ •œ•œ ๋‹จ๊ณ„ ›„— •ญƒ ข…๋ฃŒ๋˜–ด•ผ •œ๋‹ค

2) ๋ช…™•„(Definiteness)
•Œ๊ณ ๋ฆฌฆ˜˜ ๊ฐ ๋‹จ๊ณ„๋Š”  •™•žˆ  •˜๋˜–ด•ผ •œ๋‹ค

3) ž…๋ ฅ(Input)
•Œ๊ณ ๋ฆฌฆ˜€ 0๊ฐœ ดƒ˜ ž…๋ ฅ„ ๊ฐ€„๋‹ค

4) ถœ๋ ฅ(Output)
•Œ๊ณ ๋ฆฌฆ˜€ •˜๋‚˜ ดƒ˜ ถœ๋ ฅ„ ๊ฐ€„๋‹ค

5) šจœจ„(Effectiveness)
•Œ๊ณ ๋ฆฌฆ˜€ ๋ณด†ต šจœจ œผ๋กœ ˆ˜–‰๋˜๋„๋ก ๊ธฐ๋Œ€๋œ๋‹ค


1.3. •Œ๊ณ ๋ฆฌฆ˜˜ ๊ฐœ๋…„ ˆ˜•™  ง‘•ฉ๋ก ˜ ๊ด€๊ณ„๋กœ ๋‚˜ƒ€๋‚ด๊ธฐ

๊ณ„‚ฐ ธ ๋ฐฉ๋ฒ•(computational method)„ 4Œ˜ (Q,I,ฮฉ,f)๋กœ ˜•‹„ ๊ฐ–ถฐ  •˜•˜ž
Q๋Š” ๋ถ€๋ถ„ง‘•ฉ I™€ ฮฉ๋ฅผ ฌ•จ•˜๋Š” ง‘•ฉด๋‹ค
f๋Š” Q—„œ Q ž๊ธฐž‹ œผ๋กœ ๊ฐ€๋Š” •จˆ˜ด๋‹ค
ฮฉ˜ ๋ชจ๋“  ›†Œ q— ๋Œ€•˜—ฌ f(q)๋Š” q™€ ๊ฐ™•„•ผ •œ๋‹ค.
Q : ๊ณ„‚ฐ
I : ž…๋ ฅ
ฮฉ : ถœ๋ ฅ
f : ๊ณ„‚ฐ ๊ทœน™
ง‘•ฉ I˜ ›†Œ x˜ ž…๋ ฅ€ ๊ณ„‚ฐˆ˜—ด, x0, x1, x2,..., ๋ฅผ ๋‹คŒ๊ณผ ๊ฐ™ด  •˜•œ๋‹ค
~cpp 
	x0 = x	ด๊ณ 	xk + 1 = f(xk) (k >= 0)
ฮฉ— †•˜๋Š” xk — ๋Œ€•˜—ฌ k๊ฐ€ ๊ฐ€žฅ ž‘€  •ˆ˜๋ผ๋ฉด ๊ณ„‚ฐˆ˜—ด€ k๋‹จ๊ณ„—„œ ข…๋ฃŒ๋œ๋‹ค๊ณ  •œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ด ๊ฒฝšฐ— x๋กœ๋ถ€„ฐ ๊ฒฐ๊ณผ xk๊ฐ€ ƒ„๋œ๋‹ค๊ณ  •œ๋‹ค.

•Œ๊ณ ๋ฆฌฆ˜ E๋Š” ๋‹คŒ๊ณผ ๊ฐ™ด ด๋Ÿฐ ๊ด€๊ณ„๋กœ ˜•‹™”๋œ๋‹ค.
Q๋ฅผ ๋ชจ๋“  ๋‹จผ (n), ๋ชจ๋“  ˆœ„œžˆ๋Š” Œ (m,n), ๋ชจ๋“  ˆœ„œžˆ๋Š” 4Œ (m,n,r,1), (m,n,r,2), (m,n,p,3) (m,n,p๋Š” –‘˜  •ˆ˜, r€ Œด •„๋‹Œ  •ˆ˜)˜ ง‘•ฉด๋ผ •˜ž.
I๋ฅผ ๋ชจ๋“  Œ (m,n)˜ ๋ถ€๋ถ„ง‘•ฉด๋ผ •˜ž.
ฮฉ๋ฅผ ๋ชจ๋“  ๋‹จผ (n)˜ ๋ถ€๋ถ„ง‘•ฉด๋ผ •˜ž.
f๋Š” ๋‹คŒ๊ณผ ๊ฐ™ด  •˜๋œ๋‹ค.
~cpp 
f((m,n)) = (m,n,0,1};	f((n)) = (n);
f((m,n,r,1)) = (m, n, m„ nœผ๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธง€, 2);
r = 0 ด๋ฉด f((m,n,r,2)) = (n), ๊ทธ๋ ‡ง€ •Šœผ๋ฉด (m,n,r,3);
f((m,n,p,3)) = (n,p,p,1).

2. 1.3. MIX

ด …˜ ˆ˜๋งŽ€ ๋ถ€๋ถ„—„œ MIX–ธ–ด๊ฐ€ ๋“žฅ•œ๋‹ค. ๋”ฐ๋ผ„œ ๋…ž๋Š” ด  ˆ„ ฃผ˜ ๊นŠ๊ฒŒ ๊ณต๋ถ€•ด•ผ •œ๋‹ค.

2.1. 1.3.1. Description of MIX

2.1.1. šฉ–ด๊ณผ ‘œ๊ธฐ๋ฒ•

  • Words( Partitial fieslds of wordsฌ•จ)
    —ฌ„ฏ ๋ฐ”ดŠธ๋กœ ด๋ฃจ–ด„๋‹ค. •œ ๋ฐ”ดŠธ—๋Š” 0~63๊นŒง€ ˆž๊ฐ€ ๋“ค–ด๊ฐˆ ˆ˜ žˆ๋‹ค. ๊ทธ๋ฆผœผ๋กœ ๋‚˜ƒ€๋‚ด๋ฉด ๋‹คŒ๊ณผ ๊ฐ™๋‹ค.
    0 1 2 3 4 5
    Byte Byte Byte Byte Byte
    •„๋“œ  œ•œด ฃผ–ดˆ ˆ˜ žˆ๋‹ค. ˜•‹€ (L:R)ด๋‹ค. (L~R˜ ๋ฒ”œ„๋ฅผ ๋œป•œ๋‹ค.)
    <!> ˜ˆ) (0:0)๋Š” ๋ถ€˜ธ, (1:5)๋Š” ๋ถ€˜ธ๊ฐ€ —†๋Š” ˆž, (3:4)๋Š” 3,4๋ฒˆงธ ๋ฐ”ดŠธ
  • Registers
    ๋ ˆง€Šค„ฐ๋Š” •ž— †Œ๋ฌธž r„ ๋ถ™—ฌ ‘œ๊ธฐ
    A, X register
    Byte Byte Byte Byte Byte
  • I register - rI1~rI6๊นŒง€ žˆŒ.
    Byte Byte
    J register
    + Byte Byte
    ๊ทธ ™ธ—
    Overfolw toggle - on, off
    Comparison indicator, - EQUAL, LESS, GREATER
    Input, Output Devices
  • Instruction format
    0 1 2 3 4 5
    A A I F C
    C - ๋ช…๋ น–ด ฝ”๋“œ(the poeration code)
    F - ๋ช…๋ น–ด˜ ๋ณ€๊ฒฝ(a modification of the operation code). (L:R)ด๋ผ๋ฉด 8L+R = F
    AA - ๋ฉ”๋ชจ๋ฆฌ ฃผ†Œ(the address)
    I - ธ๋Šค(the index specification). ๊ฐ’ด 1~6œผ๋กœ rI1~rI6— žˆ๋Š” ๋‚ดšฉ๊ณผ ๋ฉ”๋ชจ๋ฆฌ ฃผ†Œ๋ฅผ ๋”•จ
    —ฌ๊ธฐ„œ ๋”•ด„ ฃผ†Œ๋ฅผ M, M— ๋“ค–ดžˆ๋Š” ๊ฐ’„ CONTETNS(M)ด๋ผ๊ณ  •œ๋‹ค.
  • Notation
    ~cpp OP ADDRESS, I(F)
    ๊ฐ™€ ˜•‹œผ๋กœ “ด๋‹ค.
    <!> ''˜ˆ) LDA๋Š” ๋ช…๋ น–ด ฝ”๋“œ๊ฐ€ 8ด๋‹ค.
    LDA 2000, 2(0:3) € || + || 2000 |||| 2 || 3 || 8 || ๊ณผ ๊ฐ™๋‹ค.''

2.1.2. —ฐ‚ฐ

  • Loading operators.
    CONTENTS(M)„ ๋ ˆง€Šค„— ๋„ฃ๋Š”๋‹ค.
    LDA, LDX, LDi, LDAN, LDXN, LDiNด žˆ๋‹ค.
  • Storing operators.
    ๋ ˆง€Šค„˜ ๊ฐ’„ CONTENTS(M)— ๋„ฃ๋Š”๋‹ค.
    STA, STX, STi, STJ, STZ๊ฐ€ žˆ๋‹ค.
  • Arithmetic operators.
    ‚ฌน™—ฐ‚ฐ„ •œ๋‹ค. ADD, SUB, MUL, DIV๊ฐ€ žˆ๋‹ค.
  • Address transfer operators.
    ด —ฐ‚ฐ—„œ M€ ๋ฉ”๋ชจ๋ฆฌ …€„ ๊ฐ€๋ฆฌ‚คง€ •Š๊ณ , ๊ทธ๋ƒฅ ๋ถ€˜ธžˆ๋Š” ˆž๋กœ “ฐธ๋‹ค. ENTr, ENNr, INCr, DECr๊ฐ€ žˆ๋‹ค. ( r€ A, X, 1~6)
    <!> ˜ˆ) ENTA 2000 - > rA || + || 0 || 0 || 0 || 2000 ||
  • Comparison operator
    ๋ ˆง€Šค„™€ CONTENTS(M)„ ๋น„๊ต•ด„œ LESS, GREATER, EQUAL„ „ ••˜๋Š” ๋ช…๋ น–ดด๋‹ค. CMPA, CMPX, CMPi๊ฐ€ žˆ๋‹ค. CMPi๋ฅผ •  ๋•Œ๋Š” •ž— „ž๋ฆฌ๊ฐ€ 0ด๋ผ๊ณ  ๊ฐ€ ••œ๋‹ค.
  • Jump operators.
    Mด ๊ฐ€๋ฆฌ‚ค๋Š” ๋ฉ”๋ชจ๋ฆฌ …€๋กœ  ”„•œ๋‹ค. JSJ๋ฅผ ๋นผ๋ฉด  ”„๋ฅผ •˜๋ฉด„œ  ”„ ๋ช…๋ น–ด ๋‹คŒ œ„น˜๋ฅผ rJ—  €žฅ•œ๋‹ค. the comparison indicator๋ฅผ ดšฉ•˜๊ฐ๋‚˜(JL, JE, JG, JGE, JLE, JNE) , ๋ ˆง€Šค„ฐ(JrN, JrZ, JrP, JrNN, JrNZ, JrNP)๋ฅผ ดšฉ•œ๋‹ค.
  • Miscellaneous operators.
    ‹œ”„Šธ ๋ช…๋ น€ rA™€ rX๋ฅผ ‚ฌšฉ•œ๋‹ค. SLA, SRA, SLAX, SRAX, SLC, SRC๊ฐ€ žˆ๋‹ค. M€ ‹œ”„Šธ•˜๋Š” šŸˆ˜๋ฅผ ๋‚˜ƒ€๋‚ธ๋‹ค.
    MOVE๋ช…๋ น€ F๋งŒผ CONTENTS(M)„ rI1ด ๊ฐ€๋ฆฌ‚ค๋Š” ๋ฉ”๋ชจ๋ฆฌ …€๋กœ ๊ฐ’„ ๋ณต‚ฌ•œ๋‹ค.
    <!> ''˜ˆ1) rI1 = 1001ผ ๋•Œ MOVE 1000,(3)
    CONTENTS(1000) -> CONTENTS(1001), rI1 = 1002
    CONTENTS(1001) -> CONTENTS(1002), rI1 = 1003
    CONTENTS(1002) -> CONTENTS(1003), rI1 = 1004''
    ๊ทธ๋Ÿผ ๋‹คŒ—” –ด๋–ป๊ฒŒ ๋˜๋‚˜?
    <!> ˜ˆ2) rI1 = 2000ผ ๋•Œ MOVE 1000,(3)
    ''CONTENTS(1000) -> CONTENTS(2000), rI1 = 2001
    CONTENTS(1001) -> CONTENTS(2001), rI1 = 2002
    CONTENTS(1002) -> CONTENTS(2002), rI1 = 2003''
    (rI1๊ฐ’ด ค‘๊ฐ„ค‘๊ฐ„ ๋ฐ”๋€Œ๋Š”๊ฒŒ •„๋‹ˆ๋ผ ๋‹ค ๋๋‚˜๊ณ  F๋งŒผ ๋”•ด„๋‹ค๊ณ  ƒ๊ฐ•˜๋ฉด๋ผ --„™˜)
  • NOP ๋ช…๋ น€ •„๋ฌด๊ฒƒ๋„ •˜ง€ •Š๋Š”๋‹ค.
    HLT ๋ช…๋ น€ ๊ธฐ๊ณ„๋ฅผ ๋ฉˆถ˜๋‹ค(The machine stops.)
  • Input-output opertors.
    •„𔕠 ๋•Œ ๋ณด๋ ค๊ณ  ƒ๋žต–ˆ๋‹ค.
  • Conversion operators.
    NUM€ rAX๋ฅผ ๊ฐ€ง€๊ณ  ˆž๋กœ ๋ฐ”๊พธ–ด rA—  €žฅ•œ๋‹ค. ๊ฐ ๋ฐ”ดŠธ๊ฐ€ •œ ž๋ฆฌ๋กœ ๋ฐ”๋€Œ๋Š”๋ฐ, ผ˜ ž๋ฆฌ๋งŒ ๊ฐ€ง€๊ณ  ๋ฐ”๊พผ๋‹ค(10 -> 0, 23->3 )
    CHAR๋Š” rA๋ฅผ ๊ฐ€ง€๊ณ  ๋ฌธž ฝ”๋“œ๋กœ ๋ฐ”๊พธ–ด rAX—  €žฅ•œ๋‹ค.
  • Timing
    ๊ฐ ๋ช…๋ น–ด๋Š” ‹ค–‰ ‹œ๊ฐ„(excution time)ด žˆ๋‹ค.

2.2. 1.3.3 Applications to Permutations

MIX ”„๋กœ๊ทธ๋žจ˜ ˜ˆ œ๋ฅผ ๋ณด—ฌค€๋‹ค. ค‘š”•œ ˆœ—ด˜ „ˆ(properties of permutations)„ †Œ๊ฐœ•œ๋‹ค.

ˆœ—ด€ abcdef๋ฅผ žฌ๋ฐฐ—ด(rearrangement)ด๋‚˜ ด๋ฆ„๋ฐ”๊พธ๊ธฐ(renaming)๋ฅผ •ด„œ –ป๋Š”๋‹ค๊ณ  ๋ณผ ˆ˜ žˆ๋‹ค. ด๋ฅผ ๋‹คŒ๊ณผ ๊ฐ™ด ‘œ‹œ•  ˆ˜ žˆ๋‹ค.(p.164ฐธกฐ)
( a b c d e f )
( c d f b e a )
ˆœ™˜ ‘œ‹œ(a cycle notation)๋กœ “ฐ๋ฉด ๋‹คŒ๊ณผ ๊ฐ™๋‹ค
( a c f ) ( b d )
•ด„ค : a๊ฐ€ c๋กœ ๋ฐ”๋€Œ๋Š” ๊ฒƒ(a goes to c)„ a->c๋ผ๊ณ  ‘œ‹œ•œ๋‹ค. ๋”ฐ๋ผ„œ œ„˜ ‘œ˜„€ a->c->f->a, b->d->b๋ฅผ ๋‚˜ƒ€๋‚ธ๋‹ค.e->e๊ฐ™ด ๋ณ€•˜ง€ •Š๋Š” ๊ฒƒ€ ƒ๋žต•œ๋‹ค.

2.2.1. Products of permutations

๋‘ ˆœ—ด„ ๊ณ•œ๋‹ค. (•ฉ„•จˆ˜™€ ๋น„Šท•˜๋‹ค.)
(a b c d e f ) ร— (a b c d e f )
(c d f b e a ) (b d c a f e )
= (a b c d e f )
(c a e d f b )
ด๋ฅผ a cycle notationœผ๋กœ “ฐ๋ฉด
(a c f ) (b d )(a b d )(e f) = (a c e f b)
๊ณผ •€ ™ผชฝ๋ถ€„‹œž‘•ด„œ ˜ค๋ฅธชฝœผ๋กœ ๊ฐ€๋ฉด„œ ฐพ๋Š” ๋ฐฉ‹ด๋‹ค. a๋ถ€„‹œž‘•˜๋ฉด a->cด๊ณ , c—„œ ‹œž‘•˜๋ฉด c->f->eด๋Ÿฐ ‹œผ๋กœ ฐพ„ ˆ˜ žˆ๋‹ค. ด ๊ณผ •„ ปด“จ„ฐ๋กœ ‹œ๋„•ด๋ณดž.

2.2.2. Algorithm A

A1. ๋ชจ๋“  ™ผชฝ ๊ด„˜ธ— ” „ ๋‚จ๊ธด๋‹ค. ˜ค๋ฅธชฝ ๊ด„˜ธ๋ฅผ ™ผชฝ ๊ด„˜ธ ๋‹คŒ ๋ฌธž๋กœ ๋ฐ”๊พธ๊ณ  ” „ ๋‚จ๊ธด๋‹ค.
˜ˆ) (a c f g) -> (a c f g a
A2. ™ผชฝ—„œ ˜ค๋ฅธชฝœผ๋กœ ๊ฐ€๋ฉด„œ ” ด —†๋Š” ฒซ๋ฒˆงธ ๋ฌธž๋ฅผ START๋ผ๊ณ  •œ๋‹ค. ™ผชฝ ๊ด„˜ธ™€ ๊ทธ ๋ฌธž๋ฅผ ถœ๋ ฅ•˜๊ณ  ” „ ๋‚จ๊ธด๋‹ค. ๋ชจ๋“  ๋ฌธž— ” ด ๋‚จ„ ๊ฒฝšฐ ข…๋ฃŒ•œ๋‹ค.
A3. ๋‹คŒ๋ฌธž๋ฅผ CURRENT๋กœ „Œ…•œ๋‹ค.
A4. ˜ค๋ฅธชฝœผ๋กœ ๊ฐ€๋ฉด„œ CURRENT™€ ๊ฐ™€ ๋ฌธž๋ฅผ ฐพ๋Š”๋‹ค. ฐพ€ ๊ฒฝšฐ ” „ ๋‚จ๊ธฐ๊ณ  A3๋กœ ๊ฐ„๋‹ค. (๋ชป ฐพ๊ณ  ˜ค๋ฅธชฝ ๋๊นŒง€ ๊ฐ€๋ฉด A5๋กœ ๊ฐ„๋‹ค.)
A5. STARTโ‰  CURRENTด๋ฉด CURRENT๋ฅผ ถœ๋ ฅ•˜๊ณ  ‹ ™ผชฝ๋ถ€„‹œž‘•ด„œ A4๋กœ ๊ฐ„๋‹ค.( ๊ฐ™œผ๋ฉด A6๋กœ ๊ฐ„๋‹ค.)
A6. (™„ „•œ ‚ฌดด„ ฐพ•˜œผ๋ฏ€๋กœ) ˜ค๋ฅธชฝ ๊ด„˜ธ๋ฅผ ๋‹ซ๊ณ  A2๋กœ ๊ฐ„๋‹ค.
* Timing
ž˜ ๋ชจ๋ฅด๊ฒ ๋‹ค.

2.2.3. Another Approach(Algorithm B)

What is this computer-oriented method for permutation multipulication?
˜ค๋ฅธชฝ—„œ ™ผชฝœผ๋กœ ˜ค๋ฉด„œ ๋‹ต„ ฐพ๋Š” ๋ฐฉ๋ฒ•ด๋‹ค.
(—ฌ๊ธฐ„œ๋Š” …— žˆ๋Š” Table2(p.173)๋ฅผ ๋ด•ผ •œ๋‹ค. „ธ๋กœ •œ „ด Ti๋ฅผ ๋‚˜ƒ€๋‚ธ๋‹ค. ๊ทธ ๋ฐ–— i, j, Z ๊ฐ’„  –ด ๋†“œผ๋ฉด ด•ด•  ˆ˜ žˆ๋‹ค. n€ ๋ฌธž˜ ๊ฐœˆ˜ด๋‹ค.)
B1. ๋ชจ๋“  1โ‰คkโ‰คn— ๋Œ€•ด„œ Tk โ† k. ˜ค๋ฅธชฝ๋ถ€„ฝ„ ค€๋น„๋ฅผ •œ๋‹ค.
B2. ‹„ ˜ค๋ฅธชฝ๋ถ€„•˜๋‚˜”ฉ ฝœผ๋ฉด„œ
) ด๋ฉด Zโ†0•˜๊ณ  B2๋ฐ˜๋ณต
( ด๋ฉด B4๋กœ.
๊ทธ ™ธ—๋Š” iธ xi๋ฅผ ๊ฐ€ง€๊ณ  B3๋กœ
B3. Zโ†”Ti๋ฅผ •˜๊ณ  ๋‚˜„œ Ti = 0ด๋ฉด jโ†i๋ฅผ •œ ๋’ค B2๋กœ.
B4. Tj โ† Z ›„— B2๋กœ.
  • Timing
    —ฐŠต๋ฌธ œ10— žˆ๋‹ค.

2.2.4. Inverse

ˆœ—ด —ฐ‚ฐ„ ›๋ž˜๋Œ€๋กœ ๋Œ๋ฆฌ๋Š” ˆœ—ด(—ญ–‰๋ ฌ๊ณผ ๋น„Šท•˜๋‹ค.)
๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋งŽด “ฐ๋ฉด ‰ฝ๊ฒŒ •ด๊ฒฐ( Y[Xk โ† k )
•˜ง€๋งŒ žฌ๋ฏธ‚ผ•„ nใ…ฃ ๋งคšฐ ฌ๊ณ  ๋‚จ๋Š” ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ —†๋‹ค๊ณ  •ด๋ณดž.

2.2.5. Algorithm I

(ด๋ฒˆ—๋„ Table 3(p.177)๋ฅผ ๋ณด๋ฉด„œ •˜๋ฉด ๋œ๋‹ค.)

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:28:09
Processing time 0.1557 sec