เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต (เดญเดพเด—เด‚ 1)

เดนเต‡ เดนเดฌเตผ! เดฒเต‡เด–เดจเดคเตเดคเดฟเดจเตเดฑเต† เดตเดฟเดตเตผเดคเตเดคเดจเด‚ เดžเดพเตป เดจเดฟเด™เตเด™เดณเตเดŸเต† เดถเตเดฐเดฆเตเดงเดฏเดฟเตฝเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเต
"เด’เดฐเต เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเด™เตเด™เดจเต†เดฏเดพเดฃเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเต".

เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เดณเตเดŸเต† เด•เดพเดฐเตเดฏเด‚ เดตเดฐเตเดฎเตเดชเต‹เตพ, เดŽเดจเตเดคเต‹ เดจเดทเตโ€ŒเดŸเดฎเดพเดฏเดคเดพเดฏเดฟ เดŽเดจเดฟเด•เตเด•เต เดšเดฟเดจเตเดคเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ. เด…เดต เดŽเดฒเตเดฒเดพเดฏเดฟเดŸเดคเตเดคเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เดšเต†เดฑเตเดคเตเด‚ เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดตเตเดฎเดพเดฏ SQLite เดฎเตเดคเตฝ เดถเด•เตเดคเดฎเดพเดฏ เดŸเต†เดฑเดพเดกเดพเดฑเตเดฑ เดตเดฐเต† เดจเดฟเดฐเดตเดงเดฟ เดตเตเดฏเดคเตเดฏเดธเตเดค เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดฒเดญเตเดฏเดฎเดพเดฃเต. เดŽเดจเตเดจเดพเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเต เดตเดฟเดถเดฆเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจ เดšเดฟเดฒ เดฒเต‡เด–เดจเด™เตเด™เตพ เดฎเดพเดคเตเดฐเดฎเต‡เดฏเตเดณเตเดณเต‚. เดŽเดคเตเดฐ เด•เตเดฑเดšเตเดšเต เดซเดฒเด™เตเด™เดณเตเดฃเตเดŸเต†เดจเตเดจเต เด•เดพเดฃเดพเตป "howdoesarelationaldatabasework" เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดธเตเดตเดฏเด‚ เดคเดฟเดฐเดฏเดพเดตเตเดจเตเดจเดคเดพเดฃเต. เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดˆ เดฒเต‡เด–เดจเด™เตเด™เตพ เดšเต†เดฑเตเดคเดพเดฃเต. เดจเดฟเด™เตเด™เตพ เดเดฑเตเดฑเดตเตเด‚ เดชเตเดคเดฟเดฏ เดฌเดธเดฟ เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดตเดฟเดฆเตเดฏเด•เตพเด•เตเด•เดพเดฏเดฟ เดคเดฟเดฐเดฏเตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ (BigData, NoSQL เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ JavaScript), เด…เดต เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเต เดตเดฟเดถเดฆเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจ เด•เต‚เดŸเตเดคเตฝ เด†เดดเดคเตเดคเดฟเดฒเตเดณเตเดณ เดฒเต‡เด–เดจเด™เตเด™เตพ เดจเดฟเด™เตเด™เตพ เด•เดฃเตเดŸเต†เดคเตเดคเตเด‚.

เดธเตผเดตเตเดตเด•เดฒเดพเดถเดพเดฒ เด•เต‹เดดเตโ€Œเดธเตเด•เตพ, เด—เดตเต‡เดทเดฃ เดชเตเดฐเดฌเดจเตเดงเด™เตเด™เตพ, เดชเตเดธเตโ€Œเดคเด•เด™เตเด™เตพ เดŽเดจเตเดจเดฟเดตเดฏเตโ€Œเด•เตเด•เต เดชเตเดฑเดคเตเดคเต เดตเดฟเดถเดฆเต€เด•เดฐเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเดพเดคเตเดคเดตเดฟเดงเด‚ เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดตเดณเดฐเต† เดชเดดเดฏเดคเตเด‚ เดตเดฟเดฐเดธเดตเตเดฎเดพเดฃเต‹?

เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต (เดญเดพเด—เด‚ 1)

เด’เดฐเต เดกเต†เดตเดฒเดชเตเดชเตผ เดŽเดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ, เดŽเดจเดฟเด•เตเด•เต เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เดพเดคเตเดค เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต เดžเดพเตป เดตเต†เดฑเตเด•เตเด•เตเดจเตเดจเต. เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ 40 เดตเตผเดทเดคเตเดคเดฟเดฒเต‡เดฑเต†เดฏเดพเดฏเดฟ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เด…เดคเดฟเดจเต เด’เดฐเต เด•เดพเดฐเดฃเดฎเตเดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚. เดตเตผเดทเด™เตเด™เดณเดพเดฏเดฟ, เดžเดพเตป เดฆเดฟเดตเดธเดตเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เดˆ เดตเดฟเดšเดฟเดคเตเดฐเดฎเดพเดฏ เดฌเตเดฒเดพเด•เตเด•เต เดฌเต‹เด•เตเดธเตเด•เตพ เดถเดฐเดฟเด•เตเด•เตเด‚ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดพเตป เดจเต‚เดฑเตเด•เดฃเด•เตเด•เดฟเดจเต เดฎเดฃเดฟเด•เตเด•เต‚เดฑเตเด•เตพ เดšเต†เดฒเดตเดดเดฟเดšเตเดšเต. เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เด…เดตเตผ เด•เดพเดฐเดฃเด‚ เดตเดณเดฐเต† เดฐเดธเด•เดฐเดฎเดพเดฃเต เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดตเตเด‚ เดชเตเดจเดฐเตเดชเดฏเต‹เด—เดฟเด•เตเด•เดพเดตเตเดจเตเดจเดคเตเดฎเดพเดฏ เด†เดถเดฏเด™เตเด™เดณเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณเดคเดพเดฃเต. เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดพเตป เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เดŽเดจเตเดจเดพเตฝ เดˆ เดตเดฟเดถเดพเดฒเดฎเดพเดฏ เดตเดฟเดทเดฏเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เด†เดดเตเดจเตเดจเดฟเดฑเด™เตเด™เดพเตป เด’เดฐเดฟเด•เตเด•เดฒเตเด‚ เดธเดฎเดฏเดฎเต‹ เดšเดพเดฏเตเดตเต‹ เด‡เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดจเดฟเด™เตเด™เตพ เดˆ เดฒเต‡เด–เดจเด‚ เด†เดธเตเดตเดฆเดฟเด•เตเด•เดฃเด‚.

เดˆ เดฒเต‡เด–เดจเดคเตเดคเดฟเดจเตเดฑเต† เดคเดฒเด•เตเด•เต†เดŸเตเดŸเต เดตเตเดฏเด•เตเดคเดฎเดพเดฃเต†เด™เตเด•เดฟเดฒเตเด‚, เดˆ เดฒเต‡เด–เดจเดคเตเดคเดฟเดจเตเดฑเต† เด‰เดฆเตเดฆเต‡เดถเตเดฏเด‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเด™เตเด™เดจเต† เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฃเดฎเต†เดจเตเดจเต เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดฒเตเดฒ. เด…เดคเดฟเดจเดพเตฝ, เด’เดฐเต เดฒเดณเดฟเดคเดฎเดพเดฏ เด•เดฃเด•เตเดทเตป เด…เดญเตเดฏเตผเดคเตเดฅเดจเดฏเตเด‚ เด…เดŸเดฟเดธเตเดฅเดพเดจ เดšเต‹เดฆเตเดฏเด™เตเด™เดณเตเด‚ เดŽเด™เตเด™เดจเต† เดŽเดดเตเดคเดฃเดฎเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด‡เดคเดฟเดจเด•เด‚ เด…เดฑเดฟเดžเตเดžเดฟเดฐเดฟเด•เตเด•เดฃเด‚ เด•เตเดฐเต‚เดกเต; เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดˆ เดฒเต‡เด–เดจเด‚ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เดฃเดฎเต†เดจเตเดจเดฟเดฒเตเดฒ. เดจเดฟเด™เตเด™เตพ เด…เดฑเดฟเดฏเต‡เดฃเตเดŸ เด’เดฐเต‡เดฏเตŠเดฐเต เด•เดพเดฐเตเดฏเด‚ เด…เดคเต เดฎเดพเดคเตเดฐเดฎเดพเดฃเต, เดฌเดพเด•เตเด•เดฟ เดžเดพเตป เดตเดฟเดถเดฆเต€เด•เดฐเดฟเด•เตเด•เดพเด‚.

เด…เตฝเด—เต‹เดฐเดฟเดคเด™เตเด™เดณเตเดŸเต† เดธเดฎเดฏ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดค (BigO) เดชเต‹เดฒเต†เดฏเตเดณเตเดณ เดšเดฟเดฒ เด•เดฎเตเดชเตเดฏเต‚เดŸเตเดŸเตผ เดธเดฏเตปเดธเต เด…เดŸเดฟเดธเตเดฅเดพเดจเด•เดพเดฐเตเดฏเด™เตเด™เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดžเดพเตป เด†เดฐเด‚เดญเดฟเด•เตเด•เตเด‚. เดจเดฟเด™เตเด™เดณเดฟเตฝ เดšเดฟเดฒเตผ เดˆ เด†เดถเดฏเดคเตเดคเต† เดตเต†เดฑเตเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเต เดŽเดจเดฟเด•เตเด•เดฑเดฟเดฏเดพเด‚, เดŽเดจเตเดจเดพเตฝ เด‡เดคเดฟเดฒเตเดฒเดพเดคเต† เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดจเตเดณเตเดณเดฟเดฒเต† เดธเด™เตเด•เต€เตผเดฃเดคเด•เตพ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ. เด‡เดคเตŠเดฐเต เดตเดฒเดฟเดฏ เดตเดฟเดทเดฏเดฎเดพเดฏเดคเดฟเดจเดพเตฝ, เดžเดพเตป เดถเตเดฐเดฆเตเดง เด•เต‡เดจเตเดฆเตเดฐเต€เด•เดฐเดฟเด•เตเด•เตเด‚ เดžเดพเตป เด•เดฐเตเดคเตเดจเตเดจเดคเต เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต: เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŽเด™เตเด™เดจเต† เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต SQL เด…เดจเตเดตเต‡เดทเดฃเด‚. เดžเดพเตป เดตเต†เดฑเตเดคเต† เดชเดฐเดฟเดšเดฏเดชเตเดชเต†เดŸเตเดคเตเดคเดพเด‚ เด…เดŸเดฟเดธเตเดฅเดพเดจ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เด†เดถเดฏเด™เตเด™เตพเด…เดคเดฟเดจเดพเตฝ เดฒเต‡เด–เดจเดคเตเดคเดฟเดจเตเดฑเต† เด…เดตเดธเดพเดจเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดŽเดจเตเดคเดพเดฃเต เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจเดคเต†เดจเตเดจเต เด’เดฐเต เด†เดถเดฏเด‚ เดฒเดญเดฟเด•เตเด•เตเด‚.

เดงเดพเดฐเดพเดณเด‚ เด…เตฝเด—เต‹เดฐเดฟเดคเด™เตเด™เดณเตเด‚ เดกเดพเดฑเตเดฑเดพ เด˜เดŸเดจเด•เดณเตเด‚ เด‰เตพเดชเตเดชเต†เดŸเตเดจเตเดจ เดฆเต€เตผเด˜เดตเตเด‚ เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดตเตเดฎเดพเดฏ เดฒเต‡เด–เดจเดฎเดพเดฏเดคเดฟเดจเดพเตฝ, เด‡เดคเต เดตเดพเดฏเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเตเดŸเต† เดธเดฎเดฏเดฎเต†เดŸเตเด•เตเด•เตเด•. เดšเดฟเดฒ เด†เดถเดฏเด™เตเด™เตพ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดพเตป เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚; เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด…เดต เด’เดดเดฟเดตเดพเด•เตเด•เดพเดจเตเด‚ เดชเตŠเดคเตเดตเดพเดฏ เด†เดถเดฏเด‚ เดจเต‡เดŸเดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚.

เดจเดฟเด™เตเด™เดณเดฟเตฝ เด•เต‚เดŸเตเดคเตฝ เด…เดฑเดฟเดตเตเดณเตเดณเดตเตผเด•เตเด•เดพเดฏเดฟ, เดˆ เดฒเต‡เด–เดจเด‚ 3 เดญเดพเด—เด™เตเด™เดณเดพเดฏเดฟ เดคเดฟเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต:

  • เดฒเต‹-เดฒเต†เดตเตฝ, เดนเตˆ-เดฒเต†เดตเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เด˜เดŸเด•เด™เตเด™เดณเตเดŸเต† เด…เดตเดฒเต‹เด•เดจเด‚
  • เด…เดจเตเดตเต‡เดทเดฃ เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต‡เดทเตป เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเตเดŸเต† เด…เดตเดฒเต‹เด•เดจเด‚
  • เด‡เดŸเดชเดพเดŸเดฟเดจเตเดฑเต†เดฏเตเด‚ เดฌเดซเตผ เดชเต‚เตพ เดฎเดพเดจเต‡เดœเตเดฎเต†เดจเตเดฑเดฟเดจเตเดฑเต†เดฏเตเด‚ เด…เดตเดฒเต‹เด•เดจเด‚

เดฌเต‡เดธเดฟเด•เตเดธเดฟเดฒเต‡เด•เตเด•เต เดฎเดŸเด™เตเด™เตเด•

เดตเตผเดทเด™เตเด™เตพเด•เตเด•เต เดฎเตเดฎเตเดชเต (เด’เดฐเต เด—เดพเดฒเด•เตเดธเดฟเดฏเดฟเตฝ, เดตเดณเดฐเต† เด…เด•เดฒเต†...), เดกเต†เดตเดฒเดชเตเดชเตผเดฎเดพเตผเด•เตเด•เต เด…เดตเตผ เด•เต‹เดกเดฟเด‚เด—เต เดšเต†เดฏเตเดฏเตเดจเตเดจ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เด•เตƒเดคเตเดฏเดฎเดพเดฏเดฟ เด…เดฑเดฟเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เด…เดตเดฐเตเดŸเต† เดธเตเดฒเต‹ เด•เดฎเตเดชเตเดฏเต‚เดŸเตเดŸเดฑเตเด•เดณเตเดŸเต† เดธเดฟเดชเดฟเดฏเตเดตเตเด‚ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเตเด‚ เดชเดพเดดเดพเด•เตเด•เดพเตป เด…เดตเตผเด•เตเด•เต เด•เดดเดฟเดฏเดพเดคเตเดคเดคเดฟเดจเดพเตฝ เด…เดตเตผเด•เตเด•เต เด…เดตเดฐเตเดŸเต† เด…เตฝเด—เต‹เดฐเดฟเดคเด™เตเด™เดณเตเด‚ เดกเดพเดฑเตเดฑเดพ เด˜เดŸเดจเด•เดณเตเด‚ เดนเตƒเดฆเตเดฏเดฎเดพเดฏเดฟ เด…เดฑเดฟเดฏเดพเดฎเดพเดฏเดฟเดฐเตเดจเตเดจเต.

เดˆ เดญเดพเด—เดคเตเดคเต, เดˆ เด†เดถเดฏเด™เตเด™เดณเดฟเตฝ เดšเดฟเดฒเดคเต เดžเดพเตป เดจเดฟเด™เตเด™เดณเต† เด“เตผเดฎเตเดฎเดฟเดชเตเดชเดฟเด•เตเด•เตเด‚, เด•เดพเดฐเดฃเด‚ เด…เดต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เด…เดคเตเดฏเดพเดตเดถเตเดฏเดฎเดพเดฃเต. เดžเดพเตป เด†เดถเดฏเดตเตเด‚ เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเด•เตเด•เตเด‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดธเต‚เดšเดฟเด•.

O(1) vs O(n2)

เด‡เด•เตเด•เดพเดฒเดคเตเดคเต, เดชเดฒ เดกเต†เดตเดฒเดชเตเดชเตผเดฎเดพเดฐเตเด‚ เด…เตฝเด—เต‹เดฐเดฟเดคเด™เตเด™เดณเตเดŸเต† เดธเดฎเดฏ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดคเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ... เด…เดตเตผ เดชเดฑเดžเตเดžเดคเต เดถเดฐเดฟเดฏเดพเดฃเต!

เดŽเดจเตเดจเดพเตฝ เดจเดฟเด™เตเด™เตพ เดงเดพเดฐเดพเดณเด‚ เดกเดพเดฑเตเดฑเดฏเตเดฎเดพเดฏเดฟ เด‡เดŸเดชเต†เดŸเตเดฎเตเดชเต‹เตพ (เดžเดพเตป เด†เดฏเดฟเดฐเด•เตเด•เดฃเด•เตเด•เดฟเดจเต เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ) เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เตพ เดฎเดฟเดฒเตเดฒเดฟเดธเต†เด•เตเด•เตปเดกเดฟเตฝ เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเตเดจเตเดจเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เดˆ เด†เดถเดฏเด‚ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเต เดตเดณเดฐเต† เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต. เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดธเด™เตเด•เตฝเดชเตเดชเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดฐเดฃเตเดŸเต เดธเดพเดนเดšเดฐเตเดฏเด™เตเด™เดณเตเด‚ เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเดฃเด‚! เดชเต‹เดฏเดฟเดจเตเดฑเต เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดพเตป เด†เดตเดถเตเดฏเดฎเดพเดฏเดคเดฟเดฒเตเด‚ เด•เต‚เดŸเตเดคเตฝ เดธเดฎเดฏเด‚ เดšเต†เดฒเดตเดดเดฟเด•เตเด•เดพเตป เดžเดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เดฟเดฒเตเดฒ. เดšเต†เดฒเดตเต เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต‡เดทเตป เดŽเดจเตเดจ เด†เดถเดฏเด‚ เดชเดฟเดจเตเดจเต€เดŸเต เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดพเตป เด‡เดคเต เดžเด™เตเด™เดณเต† เดธเดนเดพเดฏเดฟเด•เตเด•เตเด‚ (เดšเต†เดฒเดตเต เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณเดคเดพเดฃเต เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต‡เดทเตป).

เด†เดถเดฏเด‚

เด…เตฝเด—เต‹เดฐเดฟเดคเดคเตเดคเดฟเดจเตเดฑเต† เดธเดฎเดฏ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดค เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เด…เดณเดตเดฟเดฒเตเดณเตเดณ เดกเดพเดฑเตเดฑเดฏเตเด•เตเด•เดพเดฏเดฟ เด’เดฐเต เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดชเต‚เตผเดคเตเดคเดฟเดฏเดพเด•เตเด•เดพเตป เดŽเดคเตเดฐ เดธเดฎเดฏเดฎเต†เดŸเตเด•เตเด•เตเดฎเต†เดจเตเดจเต เด•เดพเดฃเดพเตป เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เดˆ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดค เดตเดฟเดตเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดžเด™เตเด™เตพ เดตเดฒเดฟเดฏ O เด—เดฃเดฟเดคเดถเดพเดธเตเดคเตเดฐ เดจเตŠเดŸเตเดŸเต‡เดทเตป เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดŽเดฃเตเดฃเด‚ เด‡เตปเดชเตเดŸเตเดŸเตเด•เตพเด•เตเด•เดพเดฏเดฟ เด’เดฐเต เด…เตฝเด—เต‹เดฐเดฟเดคเดคเตเดคเดฟเดจเต เดŽเดคเตเดฐ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เด†เดตเดถเตเดฏเดฎเดพเดฃเต†เดจเตเดจเต เดตเดฟเดตเดฐเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดซเด‚เด—เตเดทเดจเต‹เดŸเตŠเดชเตเดชเดฎเดพเดฃเต เดˆ เดจเตŠเดŸเตเดŸเต‡เดทเตป เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต.

เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, "เดˆ เด…เตฝเด—เต‹เดฐเดฟเดคเดคเตเดคเดฟเดจเต เดธเด™เตเด•เต€เตผเดฃเตเดฃเดค O(some_function())" เดŽเดจเตเดจเต เดžเดพเตป เดชเดฑเดฏเตเดฎเตเดชเต‹เตพ, เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เด…เดณเดตเดฟเดฒเตเดณเตเดณ เดกเดพเดฑเตเดฑ เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดšเดฟเดฒ_function(a_certain_amount_of_data) เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เด†เดตเดถเตเดฏเดฎเดพเดฃเต†เดจเตเดจเต เด…เตผเดคเตเดฅเดฎเดพเด•เตเด•เตเดจเตเดจเต.

เด‡เดชเตเดฐเด•เดพเดฐเด‚ เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เด…เดณเดตเดฒเตเดฒ เดชเตเดฐเดงเดพเดจเด‚**, เด…เดฒเตเดฒเดพเดคเตเดคเดชเด•เตเดทเด‚ ** เดกเดพเดฑเตเดฑ เดตเต‹เดณเดฟเดฏเด‚ เดตเตผเดฆเตเดงเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดจเตเดธเดฐเดฟเดšเตเดšเต เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดŽเด™เตเด™เดจเต† เดตเตผเดฆเตเดงเดฟเด•เตเด•เตเดจเตเดจเต. เดธเดฎเดฏ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดค เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเดŸเต† เด•เตƒเดคเตเดฏเดฎเดพเดฏ เดŽเดฃเตเดฃเด‚ เดจเตฝเด•เตเดจเตเดจเดฟเดฒเตเดฒ, เดŽเดจเตเดจเดพเตฝ เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดทเตป เดธเดฎเดฏเด‚ เด•เดฃเด•เตเด•เดพเด•เตเด•เดพเดจเตเดณเตเดณ เดจเดฒเตเดฒเตŠเดฐเต เดฎเดพเตผเด—เดฎเดพเดฃเดฟเดคเต.

เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต (เดญเดพเด—เด‚ 1)

เดˆ เด—เตเดฐเดพเดซเดฟเตฝ, เดตเตเดฏเดคเตเดฏเดธเตเดค เดคเดฐเด‚ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดธเดฎเดฏ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดคเด•เตพเด•เตเด•เดพเดฏเตเดณเตเดณ เด‡เตปเดชเตเดŸเตเดŸเต เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เด…เดณเดตเตเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเดŸเต† เดŽเดฃเตเดฃเดตเตเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เดพเดฃเดพเตป เด•เดดเดฟเดฏเตเด‚. เด…เดต เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เดพเตป เดžเดพเตป เด’เดฐเต เดฒเต‹เด—เดฐเดฟเดฅเดฎเดฟเด•เต เดธเตเด•เต†เดฏเดฟเตฝ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต. เดฎเดฑเตเดฑเตŠเดฐเต เดตเดฟเดงเดคเตเดคเดฟเตฝ เดชเดฑเดžเตเดžเดพเตฝ, เดกเดพเดฑเตเดฑเดฏเตเดŸเต† เด…เดณเดตเต 1 เดฎเตเดคเตฝ 1 เดฌเดฟเดฒเตเดฏเตบ เดตเดฐเต† เดตเต‡เด—เดคเตเดคเดฟเตฝ เดตเตผเดฆเตเดงเดฟเด•เตเด•เตเดจเตเดจเต. เดจเดฎเตเด•เตเด•เต เด…เดคเต เด•เดพเดฃเดพเตป เด•เดดเดฟเดฏเตเด‚:

  • O(1) เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดธเตเดฅเดฟเดฐเดฎเดพเดฏ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดค เดธเตเดฅเดฟเดฐเดฎเดพเดฏเดฟ เดคเตเดŸเดฐเตเดจเตเดจเต (เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด…เดคเดฟเดจเต† เดธเตเดฅเดฟเดฐเดฎเดพเดฏ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดค เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เดฟเดฒเตเดฒ).
  • O(เดฒเต‹เด—เต(n)) เด•เต‹เดŸเดฟเด•เตเด•เดฃเด•เตเด•เดฟเดจเต เดกเดพเดฑเตเดฑ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเตเดจเตเดจเดฟเดŸเตเดŸเตเด‚ เดคเดพเดดเตเดจเตเดจ เดจเดฟเดฒเดฏเดฟเดฒเดพเดฃเต.
  • เดเดฑเตเดฑเดตเตเด‚ เดฎเต‹เดถเด‚ เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเต - O(n2), เด‡เดตเดฟเดŸเต† เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เด…เดคเดฟเดตเต‡เด—เด‚ เดตเดณเดฐเตเดจเตเดจเต.
  • เดฎเดฑเตเดฑเต เดฐเดฃเตเดŸเต เดธเด™เตเด•เต€เตผเดฃเดคเด•เดณเตเด‚ เดตเต‡เด—เดคเตเดคเดฟเตฝ เดตเตผเดฆเตเดงเดฟเด•เตเด•เตเดจเตเดจเต.

เด‰เดฆเดพเดนเดฐเดฃเด™เตเด™เตพ

เดšเต†เดฑเดฟเดฏ เด…เดณเดตเดฟเดฒเตเดณเตเดณ เดกเดพเดฑเตเดฑ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, O(1) เด‰เด‚ O(n2) เด‰เด‚ เดคเดฎเตเดฎเดฟเดฒเตเดณเตเดณ เดตเตเดฏเดคเตเดฏเดพเดธเด‚ เดจเดฟเดธเตเดธเดพเดฐเดฎเดพเดฃเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต 2000 เด˜เดŸเด•เด™เตเด™เตพ เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸ เด’เดฐเต เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เด‰เดฃเตเดŸเต†เดจเตเดจเต เดชเดฑเดฏเดพเด‚.

  • O(1) เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 1 เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดจเต เดšเดฟเดฒเดตเดพเด•เตเด‚
  • O(log(n)) เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 7 เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพเด•เตเด•เต เดšเดฟเดฒเดตเดพเด•เตเด‚
  • O(n) เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 2 เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดšเดฟเดฒเดตเดพเด•เตเด‚
  • O(n*log(n)) เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 14 เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดšเดฟเดฒเดตเดพเด•เตเด‚
  • O(n2) เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 4 เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดšเดฟเดฒเดตเดพเด•เตเด‚

O(1) เด‰เด‚ O(n2) เด‰เด‚ เดคเดฎเตเดฎเดฟเดฒเตเดณเตเดณ เดตเตเดฏเดคเตเดฏเดพเดธเด‚ เดตเดฒเตเดคเดพเดฃเต†เดจเตเดจเต เดคเต‹เดจเตเดจเตเดจเตเดจเต (4 เดฆเดถเดฒเด•เตเดทเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ) เดŽเดจเตเดจเดพเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดชเดฐเดฎเดพเดตเดงเดฟ 2 ms เดจเดทเตเดŸเดชเตเดชเต†เดŸเตเด‚, เดจเดฟเด™เตเด™เดณเตเดŸเต† เด•เดฃเตเดฃเตเด•เตพ เดšเดฟเดฎเตเดฎเดพเตป เดธเดฎเดฏเดฎเดพเดฏเดฟ. เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, เด†เดงเตเดจเดฟเด• เดชเตเดฐเต‹เดธเดธเตเดธเดฑเตเด•เตพเด•เตเด•เต เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเด‚ เดธเต†เด•เตเด•เตปเดกเดฟเตฝ เดฆเดถเดฒเด•เตเดทเด•เตเด•เดฃเด•เตเด•เดฟเดจเต เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ. เด…เดคเตเด•เตŠเดฃเตเดŸเดพเดฃเต เดชเดฒ เดเดŸเดฟ เดชเตเดฐเต‹เดœเด•เตเดŸเตเด•เดณเดฟเดฒเตเด‚ เดชเตเดฐเด•เดŸเดจเดตเตเด‚ เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต‡เดทเดจเตเด‚ เดชเตเดฐเดถเตเดจเดฎเดพเด•เดพเดคเตเดคเดคเต.

เดžเดพเตป เดชเดฑเดžเตเดžเดคเตเดชเต‹เดฒเต†, เดตเดฒเดฟเดฏ เด…เดณเดตเดฟเดฒเตเดณเตเดณ เดกเดพเดฑเตเดฑเดฏเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดˆ เด†เดถเดฏเด‚ เด…เดฑเดฟเดฏเต‡เดฃเตเดŸเดคเต เด‡เดชเตเดชเต‹เดดเตเด‚ เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต. เด‡เดคเตเดคเดตเดฃ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ 1 เด˜เดŸเด•เด™เตเด™เตพ เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ (เด‡เดคเต เด’เดฐเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดจเต เด…เดคเตเดฐ เดตเดฒเตเดคเดฒเตเดฒ):

  • O(1) เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 1 เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดจเต เดšเดฟเดฒเดตเดพเด•เตเด‚
  • O(log(n)) เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 14 เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพเด•เตเด•เต เดšเดฟเดฒเดตเดพเด•เตเด‚
  • O(n) เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 1 เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดšเดฟเดฒเดตเดพเด•เตเด‚
  • O(n*log(n)) เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 14 เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดšเดฟเดฒเดตเดพเด•เตเด‚
  • O(n2) เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 1 เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดšเดฟเดฒเดตเดพเด•เตเด‚

เดžเดพเตป เด•เดฃเด•เตเด•เต เดšเต†เดฏเตเดคเดฟเดŸเตเดŸเดฟเดฒเตเดฒ, เดŽเดจเตเดจเดพเตฝ O(n2) เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เด•เดพเดชเตเดชเดฟ เด•เตเดŸเดฟเด•เตเด•เดพเตป เดธเดฎเดฏเดฎเตเดฃเตเดŸเต†เดจเตเดจเต เดžเดพเตป เดชเดฑเดฏเตเด‚ (เดฐเดฃเตเดŸเต†เดฃเตเดฃเด‚ เดชเต‹เดฒเตเด‚!). เดจเดฟเด™เตเด™เตพ เดกเดพเดฑเตเดฑ เดตเต‹เดณเดฟเดฏเดคเตเดคเดฟเตฝ เดฎเดฑเตเดฑเตŠเดฐเต 0 เดšเต‡เตผเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด…เตฝเดชเตเดชเด‚ เด‰เดฑเด™เตเด™เดพเตป เดธเดฎเดฏเดฎเตเดฃเตเดŸเดพเด•เตเด‚.

เดจเดฎเตเด•เตเด•เต เด•เต‚เดŸเตเดคเตฝ เด†เดดเดคเตเดคเดฟเตฝ เดชเต‹เด•เดพเด‚

เดฑเดซเดฑเตปเดธเต:

  • เด’เดฐเต เดจเดฒเตเดฒ เดนเดพเดทเต เดŸเต‡เดฌเดฟเตพ เดฒเตเด•เตเด•เตเด…เดชเตเดชเต O(1) เตฝ เด’เดฐเต เด˜เดŸเด•เด‚ เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเต.
  • เดจเดจเตเดจเดพเดฏเดฟ เดธเดจเตเดคเตเดฒเดฟเดคเดฎเดพเดฏ เด’เดฐเต เดตเตƒเด•เตเดทเด‚ เดคเดฟเดฐเดฏเตเดจเตเดจเดคเต O(log(n)) เตฝ เดซเดฒเด™เตเด™เตพ เดจเตฝเด•เตเดจเตเดจเต.
  • เด’เดฐเต เด…เดฑเต‡ เดคเดฟเดฐเดฏเตเดจเตเดจเดคเต O(n) เตฝ เดซเดฒเด™เตเด™เตพ เดจเตฝเด•เตเดจเตเดจเต.
  • เดฎเดฟเด•เดšเตเดš เดธเต‹เตผเดŸเตเดŸเดฟเด‚เด—เต เด…เตฝเด—เต‹เดฐเดฟเดคเด™เตเด™เตพเด•เตเด•เต เดธเด™เตเด•เต€เตผเดฃเตเดฃเดค O(n*log(n)) เด‰เดฃเตเดŸเต.
  • เด’เดฐเต เดฎเต‹เดถเด‚ เดธเต‹เตผเดŸเตเดŸเดฟเด‚เด—เต เด…เตฝเด—เต‹เดฐเดฟเดคเดคเตเดคเดฟเดจเต เดธเด™เตเด•เต€เตผเดฃเตเดฃเดค O(n2) เด‰เดฃเตเดŸเต.

เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเด•: เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดญเดพเด—เด™เตเด™เดณเดฟเตฝ เดจเดฎเตเด•เตเด•เต เดˆ เด…เตฝเด—เต‹เดฐเดฟเดคเด™เตเด™เดณเตเด‚ เดกเดพเดฑเตเดฑเดพ เด˜เดŸเดจเด•เดณเตเด‚ เด•เดพเดฃเดพเด‚.

เดจเดฟเดฐเดตเดงเดฟ เดคเดฐเด‚ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดธเดฎเดฏ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดคเดฏเตเดฃเตเดŸเต:

  • เดถเดฐเดพเดถเดฐเดฟ เด•เต‡เดธเต เดฐเด‚เด—เด‚
  • เดฎเดฟเด•เดšเตเดš เดธเดพเดนเดšเดฐเตเดฏเด‚
  • เดเดฑเตเดฑเดตเตเด‚ เดฎเต‹เดถเด‚ เดธเดพเดนเดšเดฐเตเดฏเดตเตเด‚

เดธเดฎเดฏ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดคเดฏเดพเดฃเต เดชเดฒเดชเตเดชเต‹เดดเตเด‚ เดเดฑเตเดฑเดตเตเด‚ เดฎเต‹เดถเด‚ เดธเดพเดนเดšเดฐเตเดฏเด‚.

เด…เตฝเด—เต‹เดฐเดฟเดคเดคเตเดคเดฟเดจเตเดฑเต† เดธเดฎเดฏ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดคเดฏเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดฎเดพเดคเตเดฐเดฎเดพเดฃเต เดžเดพเตป เดธเด‚เดธเดพเดฐเดฟเดšเตเดšเดคเต, เดŽเดจเตเดจเดพเตฝ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดค เด‡เดคเดฟเดจเตเด‚ เดฌเดพเดงเด•เดฎเดพเดฃเต:

  • เด…เตฝเด—เต‹เดฐเดฟเดคเดคเตเดคเดฟเดจเตเดฑเต† เดฎเต†เดฎเตเดฎเดฑเดฟ เด‰เดชเดญเต‹เด—เด‚
  • เดกเดฟเดธเตเด•เต I/O เด‰เดชเดญเต‹เด— เด…เตฝเด—เต‹เดฐเดฟเดคเด‚

เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, n2 เดจเต‡เด•เตเด•เดพเตพ เดฎเต‹เดถเดฎเดพเดฏ เดธเด™เตเด•เต€เตผเดฃเดคเด•เตพ เด‰เดฃเตเดŸเต, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต:

  • n4: เด‡เดคเต เดญเดฏเด™เตเด•เดฐเดฎเดพเดฃเต! เดธเต‚เดšเดฟเดชเตเดชเดฟเดšเตเดš เดšเดฟเดฒ เด…เตฝเด—เต‹เดฐเดฟเดคเด™เตเด™เตพเด•เตเด•เต เดˆ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดคเดฏเตเดฃเตเดŸเต.
  • 3n: เด‡เดคเต เด‡เดคเดฟเดฒเตเด‚ เดฎเต‹เดถเดฎเดพเดฃเต! เดˆ เดฒเต‡เด–เดจเดคเตเดคเดฟเดจเตเดฑเต† เดฎเดงเตเดฏเดคเตเดคเดฟเตฝ เดจเดฎเตเดฎเตพ เด•เดพเดฃเตเดจเตเดจ เด’เดฐเต เด…เตฝเด—เต‹เดฐเดฟเดคเดคเตเดคเดฟเดจเต เดˆ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดคเดฏเตเดฃเตเดŸเต (เด‡เดคเต เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ เดชเดฒ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เดณเดฟเดฒเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต).
  • เดซเดพเด•เตโ€ŒเดŸเต‹เดฑเดฟเดฏเตฝ n: เดšเต†เดฑเดฟเดฏ เด…เดณเดตเดฟเดฒเตเดณเตเดณ เดกเดพเดฑเตเดฑ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเต‹เดฒเตเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเดฟเด•เตเด•เดฒเตเด‚ เดซเดฒเด™เตเด™เตพ เดฒเดญเดฟเด•เตเด•เดฟเดฒเตเดฒ.
  • nn: เดจเดฟเด™เตเด™เตพ เดˆ เดธเด™เตเด•เต€เตผเดฃเดค เดจเต‡เดฐเดฟเดŸเตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ, เด‡เดคเต เดถเดฐเดฟเด•เตเด•เตเด‚ เดจเดฟเด™เตเด™เดณเตเดŸเต† เดชเตเดฐเดตเตผเดคเตเดคเดจ เดฎเต‡เด–เดฒเดฏเดพเดฃเต‹ เดŽเดจเตเดจเต เดจเดฟเด™เตเด™เตพ เดธเตเดตเดฏเด‚ เดšเต‹เดฆเดฟเด•เตเด•เดฃเด‚...

เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเด•: เดžเดพเตป เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดตเดฒเดฟเดฏ O เดชเดฆเดตเดฟเดฏเตเดŸเต† เดฏเดฅเดพเตผเดคเตเดฅ เดจเดฟเตผเดตเดšเดจเด‚ เดจเตฝเด•เดฟเดฏเดฟเดฒเตเดฒ, เด’เดฐเต เด†เดถเดฏเด‚ เดฎเดพเดคเตเดฐเด‚. เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดˆ เดฒเต‡เด–เดจเด‚ เด‡เดตเดฟเดŸเต† เดตเดพเดฏเดฟเด•เตเด•เดพเด‚ เดตเดฟเด•เตเด•เดฟเดชเต€เดกเดฟเดฏ เดฏเดฅเดพเตผเดคเตเดฅ (เด…เดธเดฟเด‚เดชเตเดฑเตเดฑเต‹เดŸเตเดŸเดฟเด•เต) เดจเดฟเตผเดตเดšเดจเดคเตเดคเดฟเดจเต.

เดฒเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตเด•

เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดถเต‡เด–เดฐเด‚ เด…เดŸเตเด•เตเด•เต‡เดฃเตเดŸเดฟเดตเดฐเตเดฎเตเดชเต‹เตพ เดจเดฟเด™เตเด™เตพ เดŽเดจเตเดคเตเดšเต†เดฏเตเดฏเตเด‚? เดŽเดจเตเดคเต? เดจเดฟเด™เตเด™เตพ เดธเต‹เตผเดŸเตเดŸเต() เดซเด‚เด—เตโ€Œเดทเดจเต† เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต... เดถเดฐเดฟ, เดจเดฒเตเดฒ เด‰เดคเตเดคเดฐเด‚... เดŽเดจเตเดจเดพเตฝ เด’เดฐเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดจเดพเดฏเดฟ, เดˆ เดธเต‹เตผเดŸเตเดŸเต() เดซเด‚เด—เตโ€Œเดทเตป เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดฃเด‚.

เดจเดฟเดฐเดตเดงเดฟ เดจเดฒเตเดฒ เดธเต‹เตผเดŸเตเดŸเดฟเด‚เด—เต เด…เตฝเด—เต‹เดฐเดฟเดคเด™เตเด™เตพ เด‰เดฃเตเดŸเต, เด…เดคเดฟเดจเดพเตฝ เดžเดพเตป เดเดฑเตเดฑเดตเตเด‚ เดชเตเดฐเดงเดพเดจเดชเตเดชเต†เดŸเตเดŸเดคเดฟเตฝ เดถเตเดฐเดฆเตเดง เด•เต‡เดจเตเดฆเตเดฐเต€เด•เดฐเดฟเด•เตเด•เตเด‚: เดฒเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตเด•. เดกเดพเดฑเตเดฑ เดธเต‹เตผเดŸเตเดŸเดฟเด‚เด—เต เด‡เดชเตเดชเต‹เตพ เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเดพเดฃเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฎเดจเดธเตเดธเดฟเดฒเดพเดฏเดฟเดฒเตเดฒเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚, เดŽเดจเตเดจเดพเตฝ เดจเดฟเด™เตเด™เตพ เด…เดจเตเดตเต‡เดทเดฃ เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต‡เดทเตป เดญเดพเด—เดคเตเดคเดฟเดจเต เดถเต‡เดทเด‚ เดตเต‡เดฃเด‚. เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดฒเดฏเดจ เด•เตเดฐเดฎเด‚ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเต เดชเดฟเดจเตเดจเต€เดŸเต เดตเดฟเดณเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดจเตเดจ เดชเตŠเดคเตเดตเดพเดฏ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดœเต‹เดฏเดฟเตป เด“เดชเตเดชเดฑเต‡เดทเตป เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดพเตป เดžเด™เตเด™เดณเต† เดธเดนเดพเดฏเดฟเด•เตเด•เตเด‚ เดฒเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตเด• เดšเต‡เดฐเตเด• (เดฒเดฏเดจ เด…เดธเต‹เดธเดฟเดฏเต‡เดทเตป).

เดฒเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตเด•

เดชเดฒ เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเดฏ เด…เตฝเด—เต‹เดฐเดฟเดคเด™เตเด™เตพ เดชเต‹เดฒเต†, เดฒเดฏเดจ เด…เดŸเตเด•เตเด•เดฒเตเด‚ เด’เดฐเต เดคเดจเตเดคเตเดฐเดคเตเดคเต† เด†เดถเตเดฐเดฏเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต: N/2 เดตเดฒเตเดชเตเดชเดฎเตเดณเตเดณ 2 เด…เดŸเตเด•เตเด•เดฟเดฏ เดถเตเดฐเต‡เดฃเดฟเด•เตพ เด’เดฐเต N-เด˜เดŸเด•เด‚ เด…เดŸเตเด•เตเด•เดฟเดฏ เด…เดฑเต‡เดฏเดฟเดฒเต‡เด•เตเด•เต เดธเด‚เดฏเต‹เดœเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต N เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดฎเดพเดคเตเดฐเดฎเต‡ เดšเต†เดฒเดตเดพเด•เต‚. เดˆ เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเต† เดฒเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตฝ เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต.

เด’เดฐเต เดฒเดณเดฟเดคเดฎเดพเดฏ เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดฒเต‚เดŸเต† เด‡เดคเต เดŽเดจเตเดคเดพเดฃเต เด…เตผเดคเตเดฅเดฎเดพเด•เตเด•เตเดจเตเดจเดคเต เดŽเดจเตเดจเต เดจเต‹เด•เตเด•เดพเด‚:

เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต (เดญเดพเด—เด‚ 1)

เด…เดตเดธเดพเดจเดฎเดพเดฏเดฟ เด…เดŸเตเด•เตเด•เดฟเดฏ 8-เดŽเดฒเดฎเต†เดจเตเดฑเต เด…เดฑเต‡ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพ 2 4-เดŽเดฒเดฎเต†เดจเตเดฑเต เด…เดฑเต‡เด•เดณเดฟเตฝ เด’เดฐเดฟเด•เตเด•เตฝ เดฎเดพเดคเตเดฐเด‚ เด†เดตเตผเดคเตเดคเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต†เดจเตเดจเต เดˆ เดšเดฟเดคเตเดฐเด‚ เด•เดพเดฃเดฟเด•เตเด•เตเดจเตเดจเต. เดฐเดฃเตเดŸเต 4-เด˜เดŸเด• เด…เดฑเต‡เด•เดณเตเด‚ เด‡เดคเดฟเดจเด•เด‚ เด…เดŸเตเด•เตเด•เดฟเดฏเดคเดฟเดจเดพเตฝ:

  • 1) เดจเดฟเด™เตเด™เตพ เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เดฐเดฃเตเดŸเต เด˜เดŸเด•เด™เตเด™เดณเตเด‚ เดฐเดฃเตเดŸเต เด…เดฑเต‡เด•เดณเดฟเตฝ เดคเดพเดฐเดคเดฎเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต (เด†เดฆเตเดฏเด‚ เด•เดฑเดจเตเดฑเต = เด†เดฆเตเดฏเด‚)
  • 2) เดคเตเดŸเตผเดจเตเดจเต 8 เดŽเดฒเดฎเต†เดจเตเดฑเต เด…เดฑเต‡เดฏเดฟเตฝ เด‡เดŸเดพเตป เดเดฑเตเดฑเดตเตเด‚ เดšเต†เดฑเดฟเดฏเดคเต เดŽเดŸเตเด•เตเด•เตเด•
  • 3) เดจเดฟเด™เตเด™เตพ เดเดฑเตเดฑเดตเตเด‚ เดšเต†เดฑเดฟเดฏ เด˜เดŸเด•เด‚ เดŽเดŸเตเดคเตเดค เด…เดฑเต‡เดฏเดฟเดฒเต† เด…เดŸเตเดคเตเดค เด˜เดŸเด•เดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดจเต€เด™เตเด™เตเด•
  • เด…เดฑเต‡เด•เดณเดฟเตฝ เด’เดจเตเดจเดฟเดจเตเดฑเต† เด…เดตเดธเดพเดจ เด˜เดŸเด•เดคเตเดคเดฟเตฝ เดŽเดคเตเดคเตเดจเตเดจเดคเตเดตเดฐเต† 1,2,3 เด†เดตเตผเดคเตเดคเดฟเด•เตเด•เตเด•.
  • เดคเตเดŸเตผเดจเตเดจเต, เดฎเดฑเตเดฑเต เด…เดฑเต‡เดฏเตเดŸเต† เดถเต‡เดทเดฟเด•เตเด•เตเดจเตเดจ เด˜เดŸเด•เด™เตเด™เตพ เด’เดฐเต 8 เดŽเดฒเดฎเต†เดจเตเดฑเต เด…เดฑเต‡เดฏเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดพเตป เดจเดฟเด™เตเด™เตพ เดŽเดŸเตเด•เตเด•เตเด‚.

เดฐเดฃเตเดŸเต 4-เด˜เดŸเด• เด…เดฑเต‡เด•เดณเตเด‚ เด…เดŸเตเด•เตเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเตฝ เด‡เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเดฟเดจเดพเตฝ เดจเดฟเด™เตเด™เตพ เด† เด…เดฑเต‡เด•เดณเดฟเตฝ "เดคเดฟเดฐเดฟเด•เต†" เดชเต‹เด•เต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒ.

เด‡เดชเตเดชเต‹เตพ เดžเด™เตเด™เตพ เดคเดจเตเดคเตเดฐเด‚ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเต, เดฒเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดŽเดจเตเดฑเต† เดธเตเดฏเต‚เดกเต‹เด•เต‹เดกเต เด‡เดคเดพ:

array mergeSort(array a)
   if(length(a)==1)
      return a[0];
   end if

   //recursive calls
   [left_array right_array] := split_into_2_equally_sized_arrays(a);
   array new_left_array := mergeSort(left_array);
   array new_right_array := mergeSort(right_array);

   //merging the 2 small ordered arrays into a big one
   array result := merge(new_left_array,new_right_array);
   return result;

เดฒเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตฝ เด’เดฐเต เดชเตเดฐเดถเตโ€Œเดจเดคเตเดคเต† เดšเต†เดฑเดฟเดฏ เดชเตเดฐเดถเตโ€Œเดจเด™เตเด™เดณเดพเด•เตเด•เดฟ เดฎเดพเดฑเตเดฑเตเด•เดฏเตเด‚ เดคเตเดŸเตผเดจเตเดจเต เดฏเดฅเดพเตผเดคเตเดฅ เดชเตเดฐเดถเตโ€Œเดจเดคเตเดคเดฟเดจเตเดฑเต† เดซเดฒเด‚ เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดšเต†เดฑเดฟเดฏ เดชเตเดฐเดถเตโ€Œเดจเด™เตเด™เดณเตเดŸเต† เดซเดฒเด™เตเด™เตพ เด•เดฃเตเดŸเต†เดคเตเดคเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต (เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเด•: เด‡เดคเตเดคเดฐเดคเตเดคเดฟเดฒเตเดณเตเดณ เด…เตฝเด—เต‹เดฐเดฟเดคเดคเตเดคเต† เดตเดฟเดญเดœเดฟเดšเตเดšเต เด•เต€เดดเดŸเด•เตเด•เตเด• เดŽเดจเตเดจเต เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต). เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดˆ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเดจเตเดจเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดตเดฟเดทเดฎเดฟเด•เตเด•เต‡เดฃเตเดŸ; เด†เดฆเตเดฏเด‚ เด•เดฃเตเดŸเดชเตเดชเต‹เตพ เดฎเดจเดธเตเดธเดฟเดฒเดพเดฏเดฟเดฒเตเดฒ. เด‡เดคเดฟเดจเต เดจเดฟเด™เตเด™เดณเต† เดธเดนเดพเดฏเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดฎเต†เด™เตเด•เดฟเตฝ, เดžเดพเตป เดˆ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เด’เดฐเต เดฐเดฃเตเดŸเต-เด˜เดŸเตเดŸ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เด†เดฏเดฟ เด•เดพเดฃเตเดจเตเดจเต:

  • เดกเดฟเดตเดฟเดทเตป เด˜เดŸเตเดŸเด‚, เด‡เดตเดฟเดŸเต† เด…เดฑเต‡เดฏเต† เดšเต†เดฑเดฟเดฏ เด…เดฑเต‡เด•เดณเดพเดฏเดฟ เดคเดฟเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต
  • เดšเต†เดฑเดฟเดฏ เด…เดฑเต‡เด•เตพ เดธเด‚เดฏเต‹เดœเดฟเดชเตเดชเดฟเดšเตเดšเต (เดฏเต‚เดฃเดฟเดฏเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต) เด’เดฐเต เดตเดฒเดฟเดฏ เด…เดฑเต‡ เดฐเต‚เดชเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเดพเดฃเต เดธเต‹เตผเดŸเตเดŸเดฟเด‚เด—เต เด˜เดŸเตเดŸเด‚.

เดตเดฟเดญเดœเดจ เด˜เดŸเตเดŸเด‚

เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต (เดญเดพเด—เด‚ 1)

เดกเดฟเดตเดฟเดทเตป เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ, เด…เดฑเต‡เดฏเต† 3 เด˜เดŸเตเดŸเด™เตเด™เดณเดฟเดฒเดพเดฏเดฟ เดเด•เต€เด•เตƒเดค เดถเตเดฐเต‡เดฃเดฟเด•เดณเดพเดฏเดฟ เดคเดฟเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด˜เดŸเตเดŸเด™เตเด™เดณเตเดŸเต† เด”เดชเดšเดพเดฐเดฟเด• เดŽเดฃเตเดฃเด‚ เดฒเต‹เด—เต(N) เด†เดฃเต (N=8, เดฒเต‹เด—เต(N) = 3 เดฎเตเดคเตฝ).

เด‡เดคเต เดŽเดจเดฟเด•เตเด•เต เดŽเด™เตเด™เดจเต† เด…เดฑเดฟเดฏเดพเด‚?

เดžเดพเตป เดชเตเดฐเดคเดฟเดญเดฏเดพเดฃเต! เด’เดฐเต เดตเดพเด•เตเด•เดฟเตฝ - เด—เดฃเดฟเดคเดถเดพเดธเตเดคเตเดฐเด‚. เด“เดฐเต‹ เด˜เดŸเตเดŸเดตเตเด‚ เด’เดฑเดฟเดœเดฟเดจเตฝ เด…เดฑเต‡เดฏเตเดŸเต† เดตเดฒเตเดชเตเดชเดคเตเดคเต† 2 เด•เตŠเดฃเตเดŸเต เดนเดฐเดฟเด•เตเด•เตเดจเตเดจเต เดŽเดจเตเดจเดคเดพเดฃเต เด†เดถเดฏเด‚. เด’เดฑเดฟเดœเดฟเดจเตฝ เด…เดฑเต‡เดฏเต† เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดŽเดคเตเดฐ เดคเดตเดฃ เดตเดฟเดญเดœเดฟเด•เตเด•เดพเด‚ เดŽเดจเตเดจเดคเดพเดฃเต เด˜เดŸเตเดŸเด™เตเด™เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚. เด‡เดคเดพเดฃเต เดฒเต‹เด—เดฐเดฟเดคเด‚ (เด…เดŸเดฟเดธเตเดฅเดพเดจเด‚ 2) เดจเตเดฑเต† เด•เตƒเดคเตเดฏเดฎเดพเดฏ เดจเดฟเตผเดตเดšเดจเด‚.

เดธเต‹เตผเดŸเตเดŸเดฟเด‚เด—เต เด˜เดŸเตเดŸเด‚

เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต (เดญเดพเด—เด‚ 1)

เดธเต‹เตผเดŸเตเดŸเดฟเด‚เด—เต เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ, เดจเดฟเด™เตเด™เตพ เดเด•เต€เด•เตƒเดค (เดเด•-เด˜เดŸเด•เด‚) เด…เดฑเต‡เด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต. เด“เดฐเต‹ เด˜เดŸเตเดŸเดคเตเดคเดฟเดฒเตเด‚ เดจเดฟเด™เตเด™เตพ เด’เดจเตเดจเดฟเดฒเดงเดฟเด•เด‚ เดฒเดฏเดจ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดชเตเดฐเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต, เดฎเตŠเดคเตเดคเด‚ เดšเต†เดฒเดตเต N = 8 เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเดพเดฃเต:

  • เด†เดฆเตเดฏ เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 4 เดฒเดฏเดจเด™เตเด™เตพ เด‰เดฃเตเดŸเต, เด…เดคเต เด“เดฐเต‹เดจเตเดจเดฟเดจเตเด‚ 2 เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพเด•เตเด•เต เดšเดฟเดฒเดตเดพเด•เตเด‚
  • เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 2 เดฒเดฏเดจเด™เตเด™เตพ เด‰เดฃเตเดŸเต, เด…เดคเต 4 เด“เดชเตเดชเดฑเต‡เดทเดจเตเด•เตพ เดตเต€เดคเด‚ เดšเต†เดฒเดตเดพเด•เตเด‚
  • เดฎเต‚เดจเตเดจเดพเด‚ เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต 1 เดฒเดฏเดจเดฎเตเดฃเตเดŸเต, เด…เดคเดฟเดจเต 8 เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดšเดฟเดฒเดตเดพเด•เตเด‚

เดฒเต‹เด—เต (N) เด˜เดŸเตเดŸเด™เตเด™เตพ เด‰เดณเตเดณเดคเดฟเดจเดพเตฝ, เด†เด•เต† เดšเต†เดฒเดตเต เดŽเตป * เดฒเต‹เด—เต(เดŽเตป) เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ.

เดฒเดฏเดจ เดฐเต€เดคเดฟเดฏเตเดŸเต† เดชเตเดฐเดฏเต‹เดœเดจเด™เตเด™เตพ

เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเดพเดฃเต เดˆ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เด‡เดคเตเดฐ เดถเด•เตเดคเดฟเดฏเตเดณเตเดณเดคเต?

เด•เดพเดฐเดฃเด‚:

  • เดฎเต†เดฎเตเดฎเดฑเดฟ เดซเต‚เดŸเตเดŸเตโ€Œเดชเตเดฐเดฟเดจเตเดฑเต เด•เตเดฑเดฏเตเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เตพเด•เตเด•เดคเต เดฎเดพเดฑเตเดฑเดพเด‚, เด…เดคเตเดตเดดเดฟ เดจเดฟเด™เตเด™เตพ เดชเตเดคเดฟเดฏ เด…เดฑเต‡เด•เตพ เดธเตƒเดทเตโ€ŒเดŸเดฟเด•เตเด•เดพเดคเต† เด‡เตปเดชเตเดŸเตเดŸเต เด…เดฑเต‡ เดจเต‡เดฐเดฟเดŸเตเดŸเต เดชเดฐเดฟเดทเตโ€Œเด•เตเด•เดฐเดฟเด•เตเด•เตเด•.

เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเด•: เด‡เดคเตเดคเดฐเดคเตเดคเดฟเดฒเตเดณเตเดณ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต in-เดธเตเดฅเดฒเด‚ (เด…เดงเดฟเด• เดฎเต†เดฎเตเดฎเดฑเดฟ เด‡เดฒเตเดฒเดพเดคเต† เด…เดŸเตเด•เตเด•เตเดจเตเดจเต).

  • เด•เดพเดฐเตเดฏเดฎเดพเดฏ เดกเดฟเดธเตเด•เต I/O เด“เดตเตผเดนเต†เดกเต เด‡เดฒเตเดฒเดพเดคเต† เด’เดฐเต‡ เดธเดฎเดฏเด‚ เดกเดฟเดธเตเด•เต เดธเตเดชเต‡เดธเตเด‚ เดšเต†เดฑเดฟเดฏ เด…เดณเดตเดฟเดฒเตเดณเตเดณ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดคเต เดฎเดพเดฑเตเดฑเดพเดตเตเดจเตเดจเดคเดพเดฃเต. เดจเดฟเดฒเดตเดฟเตฝ เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจ เดญเดพเด—เด™เตเด™เตพ เดฎเดพเดคเตเดฐเด‚ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเด• เดŽเดจเตเดจเดคเดพเดฃเต เด†เดถเดฏเด‚. 100-เดฎเต†เด—เดพเดฌเตˆเดฑเตเดฑเต เดฎเต†เดฎเตเดฎเดฑเดฟ เดฌเดซเตผ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดฎเตพเดŸเตเดŸเดฟ-เดœเดฟเด—เดพเดฌเตˆเดฑเตเดฑเต เดชเดŸเตเดŸเดฟเด• เด…เดŸเตเด•เตเด•เต‡เดฃเตเดŸเดฟเดตเดฐเตเดฎเตเดชเต‹เตพ เด‡เดคเต เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต.

เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเด•: เด‡เดคเตเดคเดฐเดคเตเดคเดฟเดฒเตเดณเตเดณ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเต เดฌเดพเดนเตเดฏ เดคเดฐเด‚.

  • เด’เดจเตเดจเดฟเดฒเดงเดฟเด•เด‚ เดชเตเดฐเต‹เดธเดธเตเดธเตเด•เตพ/เดคเตเดฐเต†เดกเตเด•เตพ/เดธเต†เตผเดตเดฑเตเด•เตพ เดŽเดจเตเดจเดฟเดตเดฏเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดคเต เดฎเดพเดฑเตเดฑเดพเดตเตเดจเตเดจเดคเดพเดฃเต.

เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดค เดฒเดฏเดจ เด•เตเดฐเดฎเด‚ เดชเตเดฐเดงเดพเดจ เด˜เดŸเด•เด™เตเด™เดณเดฟเดฒเตŠเดจเตเดจเดพเดฃเต เดธเต‡เดพเดณเตผ (เด‡เดคเต เดตเดฒเดฟเดฏ เดกเดพเดฑเตเดฑเดฏเดฟเดฒเต† เด’เดฐเต เด˜เดŸเดจเดฏเดพเดฃเต).

  • เดˆ เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดˆเดฏเดคเตเดคเต† เดธเตเดตเตผเดฃเตเดฃเดฎเดพเด•เตเด•เดฟ เดฎเดพเดฑเตเดฑเตเด‚ (เดถเดฐเดฟเด•เตเด•เตเด‚!).

เดˆ เดธเต‹เตผเดŸเตเดŸเดฟเด‚เด—เต เด…เตฝเด—เต‹เดฐเดฟเดคเด‚ เดฎเดฟเด•เตเด• (เดŽเดฒเตเดฒเดพเด‚ เด‡เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ) เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เดณเดฟเดฒเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต, เดŽเดจเตเดจเดพเตฝ เด‡เดคเต เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ. เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เต‚เดŸเตเดคเตฝ เด…เดฑเดฟเดฏเดฃเดฎเต†เด™เตเด•เดฟเตฝ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดคเต เดตเดพเดฏเดฟเด•เตเด•เดพเด‚ เด—เดตเต‡เดทเดฃ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚, เด‡เดคเต เดชเตŠเดคเตเดตเดพเดฏ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดธเต‹เตผเดŸเตเดŸเดฟเด‚เด—เต เด…เตฝเด—เต‹เดฐเดฟเดคเด™เตเด™เดณเตเดŸเต† เด—เตเดฃเดฆเต‹เดทเด™เตเด™เตพ เดšเตผเดšเตเดš เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เด…เดฑเต‡, เดŸเตเดฐเต€, เดนเดพเดทเต เดŸเต‡เดฌเดฟเตพ

เดธเดฎเดฏ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดคเดฏเตเด‚ เด…เดŸเตเด•เตเด•เตเด‚ เดŽเดจเตเดจ เด†เดถเดฏเด‚ เด‡เดชเตเดชเต‹เตพ เดžเด™เตเด™เตพ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเต, 3 เดกเดพเดฑเตเดฑ เด˜เดŸเดจเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดžเดพเตป เดจเดฟเด™เตเด™เดณเต‹เดŸเต เดชเดฑเดฏเดฃเด‚. เด…เดตเตผ เด•เดพเดฐเดฃเด‚ เด‡เดคเต เดชเตเดฐเดงเดพเดจเดฎเดพเดฃเต เด†เดงเตเดจเดฟเด• เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เดณเตเดŸเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเด‚. เดžเดพเตป เด†เดถเดฏเดตเตเด‚ เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเด•เตเด•เตเด‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดธเต‚เดšเดฟเด•.

เดถเตเดฐเต‡เดฃเดฟ

เด’เดฐเต เดฆเตเดตเดฟเดฎเดพเดจ เด…เดฑเต‡เดฏเดพเดฃเต เดเดฑเตเดฑเดตเตเด‚ เดฒเดณเดฟเดคเดฎเดพเดฏ เดกเดพเดฑเตเดฑ เด˜เดŸเดจ. เด’เดฐเต เดชเดŸเตเดŸเดฟเด•เดฏเต† เด’เดฐเต เด…เดฑเต‡ เด†เดฏเดฟ เด•เดฃเด•เตเด•เดพเด•เตเด•เดพเด‚. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต:

เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต (เดญเดพเด—เด‚ 1)

เดˆ 2-เดกเตˆเดฎเตปเดทเดฃเตฝ เด…เดฑเต‡ เดตเดฐเดฟเด•เดณเตเด‚ เดจเดฟเดฐเด•เดณเตเด‚ เด‰เดณเตเดณ เด’เดฐเต เดชเดŸเตเดŸเดฟเด•เดฏเดพเดฃเต:

  • เด“เดฐเต‹ เดตเดฐเดฟเดฏเตเด‚ เด’เดฐเต เดŽเดจเตเดฑเดฟเดฑเตเดฑเดฟเดฏเต† เดชเตเดฐเดคเดฟเดจเดฟเดงเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต
  • เดŽเดจเตเดฑเดฟเดฑเตเดฑเดฟเดฏเต† เดตเดฟเดตเดฐเดฟเด•เตเด•เตเดจเตเดจ เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟเด•เตพ เด•เต‹เดณเด™เตเด™เตพ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเต.
  • เด“เดฐเต‹ เดจเดฟเดฐเดฏเตเด‚ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดคเดฐเด‚ (เดชเต‚เตผเดฃเตเดฃเดธเด‚เด–เตเดฏ, เดธเตเดŸเตเดฐเดฟเด‚เด—เต, เดคเต€เดฏเดคเดฟ...) เดกเดพเดฑเตเดฑ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเต.

เดกเดพเดฑเตเดฑ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เดฆเตƒเดถเตเดฏเดตเตฝเด•เตเด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เด‡เดคเต เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฃเต, เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดฎเต‚เดฒเตเดฏเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเต‡เดฃเตเดŸเดฟเดตเดฐเตเดฎเตเดชเต‹เตพ, เด‡เดคเต เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดฒเตเดฒ.

เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฏเตเด•เต†เดฏเดฟเตฝ เดœเต‹เดฒเดฟ เดšเต†เดฏเตเดฏเตเดจเตเดจ เดŽเดฒเตเดฒเดพ เด†เตบเด•เตเดŸเตเดŸเดฟเด•เดณเต†เดฏเตเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเดฃเดฎเต†เด™เตเด•เดฟเตฝ, เด† เดตเดฐเดฟ เดฏเตเด•เต†เดฏเตเดŸเต‡เดคเดพเดฃเต‹ เดŽเดจเตเดจเต เดจเดฟเตผเดฃเตเดฃเดฏเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เตพ เด“เดฐเต‹ เดตเดฐเดฟเดฏเตเด‚ เดจเต‹เด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เด‡เดคเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต N เด‡เดŸเดชเดพเดŸเตเด•เตพ เดšเดฟเดฒเดตเดพเด•เตเด‚เดŽเดตเดฟเดŸเต† N - เดตเดฐเดฟเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚, เด…เดคเต เดฎเต‹เดถเดฎเดฒเตเดฒ, เดŽเดจเตเดจเดพเตฝ เดตเต‡เด—เดคเดฏเต‡เดฑเดฟเดฏ เดฎเดพเตผเด—เด‚ เด‰เดฃเตเดŸเดพเด•เตเดฎเต‹? เด‡เดจเดฟ เดจเดฎเตเด•เตเด•เต เดฎเดฐเด™เตเด™เดณเต† เดชเดฐเดฟเดšเดฏเดชเตเดชเต†เดŸเดพเดจเตเดณเตเดณ เดธเดฎเดฏเดฎเดพเดฃเต.

เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเด•: เดฎเดฟเด•เตเด• เด†เดงเตเดจเดฟเด• เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เดณเตเด‚ เดŸเต‡เดฌเดฟเดณเตเด•เตพ เด•เดพเดฐเตเดฏเด•เตเดทเดฎเดฎเดพเดฏเดฟ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดตเดฟเดชเตเดฒเต€เด•เตƒเดค เดถเตเดฐเต‡เดฃเดฟเด•เตพ เดจเตฝเด•เตเดจเตเดจเต: เด•เต‚เดฎเตเดชเดพเดฐเด‚-เด“เตผเด—เดจเตˆเดธเตเดกเตเดŸเต‡เดฌเดฟเดณเตเด•เตพ, เด‡เตปเดกเต†เด•เตเดธเต-เด“เตผเด—เดจเตˆเดธเตเดกเตเดŸเต‡เดฌเดฟเดณเตเด•เตพ. เดŽเดจเตเดจเดพเตฝ เด’เดฐเต เด•เต‚เดŸเตเดŸเด‚ เดจเดฟเดฐเด•เดณเดฟเตฝ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เด…เดตเดธเตเดฅ เดตเต‡เด—เดคเตเดคเดฟเตฝ เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตเดฐเดถเตเดจเด‚ เด‡เดคเต เดฎเดพเดฑเตเดฑเดฟเดฒเตเดฒ.

เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดŸเตเดฐเต€เดฏเตเด‚ เดธเต‚เดšเดฟเด•เดฏเตเด‚

เด’เดฐเต เดฌเตˆเดจเดฑเดฟ เดธเต†เตผเดšเตเดšเต เดŸเตเดฐเต€ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดชเตเดฐเต‹เดชเตเดชเตผเดŸเตเดŸเดฟ เด‰เดณเตเดณ เด’เดฐเต เดฌเตˆเดจเดฑเดฟ เดŸเตเดฐเต€ เด†เดฃเต, เด“เดฐเต‹ เดจเต‹เดกเดฟเดฒเต†เดฏเตเด‚ เด•เต€ เด‡เดคเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚:

  • เด‡เดŸเดคเต เดธเดฌเตเดŸเตเดฐเต€เดฏเดฟเตฝ เดธเด‚เดญเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดŽเดฒเตเดฒเดพ เด•เต€เด•เดณเต‡เด•เตเด•เดพเดณเตเด‚ เดตเดฒเตเดคเต
  • เดตเดฒเดคเต เดธเดฌเตเดŸเตเดฐเต€เดฏเดฟเตฝ เดธเด‚เดญเดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดŽเดฒเตเดฒเดพ เด•เต€เด•เดณเต‡เด•เตเด•เดพเดณเตเด‚ เด•เตเดฑเดตเต

เดฆเตƒเดถเตเดฏเดชเดฐเดฎเดพเดฏเดฟ เด‡เดคเต เดŽเดจเตเดคเดพเดฃเต เด…เตผเดคเตเดฅเดฎเดพเด•เตเด•เตเดจเตเดจเดคเต เดŽเดจเตเดจเต เดจเต‹เด•เตเด•เดพเด‚

เดเดกเดฟเดฏ

เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต (เดญเดพเด—เด‚ 1)

เดˆ เดตเตƒเด•เตเดทเดคเตเดคเดฟเดจเต N = 15 เด˜เดŸเด•เด™เตเด™เตพ เด‰เดฃเตเดŸเต. เดžเดพเตป 208-เดจเดพเดฏเดฟ เดคเดฟเดฐเดฏเตเด•เดฏเดพเดฃเต†เดจเตเดจเต เดชเดฑเดฏเดพเด‚:

  • เดžเดพเตป 136 เด•เต€ เด†เดฏ เดฑเต‚เดŸเตเดŸเดฟเตฝ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต. 136<208 เดฎเตเดคเตฝ, เดžเดพเตป เดจเต‹เดกเต 136 เดจเตเดฑเต† เดตเดฒเดคเต เดธเดฌเตเดŸเตเดฐเต€เดฏเดฟเดฒเต‡เด•เตเด•เต เดจเต‹เด•เตเด•เตเดจเตเดจเต.
  • 398>208 เด…เดคเดฟเดจเดพเตฝ เดžเดพเตป เดจเต‹เดกเต 398-เดจเตเดฑเต† เด‡เดŸเดคเต เดธเดฌเตเดŸเตเดฐเต€เดฏเดฟเดฒเต‡เด•เตเด•เดพเดฃเต เดจเต‹เด•เตเด•เตเดจเตเดจเดคเต
  • 250>208 เด…เดคเดฟเดจเดพเตฝ เดžเดพเตป เดจเต‹เดกเต 250-เดจเตเดฑเต† เด‡เดŸเดคเต เดธเดฌเตเดŸเตเดฐเต€เดฏเดฟเดฒเต‡เด•เตเด•เดพเดฃเต เดจเต‹เด•เตเด•เตเดจเตเดจเดคเต
  • 200<208, เด…เดคเดฟเดจเดพเตฝ เดžเดพเตป เดจเต‹เดกเต 200-เดจเตเดฑเต† เดตเดฒเดคเต เดธเดฌเตเดŸเตเดฐเต€เดฏเดฟเดฒเต‡เด•เตเด•เดพเดฃเต เดจเต‹เด•เตเด•เตเดจเตเดจเดคเต. เดŽเดจเตเดจเดพเตฝ 200-เดจเต เดถเดฐเดฟเดฏเดพเดฏ เดธเดฌเตเดŸเตเดฐเต€ เด‡เดฒเตเดฒ, เดฎเต‚เดฒเตเดฏเด‚ เดจเดฟเดฒเดตเดฟเดฒเดฟเดฒเตเดฒ (เด•เดพเดฐเดฃเด‚ เด…เดคเต เดจเดฟเดฒเดตเดฟเดฒเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เด…เดคเต เดตเดฒเดคเต เดธเดฌเตเดŸเตเดฐเต€ 200 เตฝ เด†เดฏเดฟเดฐเดฟเด•เตเด•เตเด‚).

เด‡เดชเตเดชเต‹เตพ เดžเดพเตป 40-เดจเต† เดคเดฟเดฐเดฏเตเด•เดฏเดพเดฃเต†เดจเตเดจเต เดชเดฑเดฏเดพเด‚

  • เดžเดพเตป 136 เด•เต€ เด†เดฏ เดฑเต‚เดŸเตเดŸเดฟเตฝ เดจเดฟเดจเตเดจเต เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเต. 136 > 40 เดฎเตเดคเตฝ, เดžเดพเตป เดจเต‹เดกเต 136 เดจเตเดฑเต† เด‡เดŸเดคเต เดธเดฌเตเดŸเตเดฐเต€เดฏเดฟเดฒเต‡เด•เตเด•เต เดจเต‹เด•เตเด•เตเดจเตเดจเต.
  • 80 > 40, เด…เดคเดฟเดจเดพเตฝ เดžเดพเตป เดจเต‹เดกเต 80-เดจเตเดฑเต† เด‡เดŸเดคเต เดธเดฌเตเดŸเตเดฐเต€เดฏเดฟเดฒเต‡เด•เตเด•เดพเดฃเต เดจเต‹เด•เตเด•เตเดจเตเดจเดคเต
  • 40= 40, เดจเต‹เดกเต เดจเดฟเดฒเดตเดฟเดฒเตเดฃเตเดŸเต. เดžเดพเตป เดจเต‹เดกเดฟเดจเตเดณเตเดณเดฟเดฒเต† เดตเดฐเดฟ เดเดกเดฟ เดตเต€เดฃเตเดŸเต†เดŸเตเด•เตเด•เตเดจเตเดจเต (เดšเดฟเดคเตเดฐเดคเตเดคเดฟเตฝ เด•เดพเดฃเดฟเดšเตเดšเดฟเดŸเตเดŸเดฟเดฒเตเดฒ) เด•เต‚เดŸเดพเดคเต† เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดตเดฐเดฟ เดเดกเดฟเด•เตเด•เดพเดฏเดฟ เดชเดŸเตเดŸเดฟเด•เดฏเดฟเตฝ เดจเต‹เด•เตเด•เตเด•.
  • เดตเดฐเดฟ เดเดกเดฟ เด…เดฑเดฟเดฏเตเดจเตเดจเดคเต, เดชเดŸเตเดŸเดฟเด•เดฏเดฟเตฝ เดกเดพเดฑเตเดฑ เดŽเดตเดฟเดŸเต†เดฏเดพเดฃเต†เดจเตเดจเต เด•เตƒเดคเตเดฏเดฎเดพเดฏเดฟ เด…เดฑเดฟเดฏเดพเตป เดŽเดจเตเดจเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเดฟเดจเดพเตฝ เดŽเดจเดฟเด•เตเด•เต เด…เดคเต เดคเตฝเด•เตเดทเดฃเด‚ เดตเต€เดฃเตเดŸเต†เดŸเตเด•เตเด•เดพเดจเดพเด•เตเด‚.

เด…เดตเดธเดพเดจเด‚, เดฐเดฃเตเดŸเต เดคเดฟเดฐเดฏเดฒเตเด•เตพเด•เตเด•เตเด‚ เดŽเดจเดฟเด•เตเด•เต เดฎเดฐเดคเตเดคเดฟเดจเตเดณเตเดณเดฟเดฒเต† เดฒเต†เดตเดฒเตเด•เดณเตเดŸเต† เดŽเดฃเตเดฃเด‚ เดšเดฟเดฒเดตเดพเด•เตเด‚. เดฒเดฏเดฟเดชเตเดชเดฟเด•เตเด•เตฝ เด•เตเดฐเดฎเดคเตเดคเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดญเดพเด—เด‚ เดจเดฟเด™เตเด™เตพ เดถเตเดฐเดฆเตเดงเดพเดชเต‚เตผเดตเตเดตเด‚ เดตเดพเดฏเดฟเดšเตเดšเดพเตฝ, เดฒเต‹เด—เต (N) เดฒเต†เดตเดฒเตเด•เตพ เด‰เดฃเตเดŸเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพ เด•เดพเดฃเตเด‚. เด‡เดคเต เดฎเดพเดฑเตเดจเตเดจเต, เดคเดฟเดฐเดฏเตฝ เดšเต†เดฒเดตเต เดฒเต‹เด—เต (N), เดฎเต‡เดพเดถเดฎเดฒเตเดฒ!

เดจเดฎเตเด•เตเด•เต เดจเดฎเตเดฎเตเดŸเต† เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดฎเดŸเด™เตเด™เดพเด‚

เดŽเดจเตเดจเดพเตฝ เด‡เดคเต เดตเดณเดฐเต† เด…เดฎเต‚เตผเดคเตเดคเดฎเดพเดฃเต, เด…เดคเดฟเดจเดพเตฝ เดจเดฎเตเด•เตเด•เต เดจเดฎเตเดฎเตเดŸเต† เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดฎเดŸเด™เตเด™เดพเด‚. เดฒเดณเดฟเดคเดฎเดพเดฏ เด’เดฐเต เดชเต‚เตผเดฃเตเดฃเดธเด‚เด–เตเดฏเดฏเตเด•เตเด•เต เดชเด•เดฐเด‚, เดฎเตเดฎเตเดชเดคเตเดคเต† เดชเดŸเตเดŸเดฟเด•เดฏเดฟเดฒเต† เด’เดฐเดพเดณเตเดŸเต† เดฐเดพเดœเตเดฏเดคเตเดคเต† เดชเตเดฐเดคเดฟเดจเดฟเดงเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดธเตเดŸเตเดฐเดฟเด‚เด—เต เดธเด™เตเด•เตฝเดชเตเดชเดฟเด•เตเด•เตเด•. เดชเดŸเตเดŸเดฟเด•เดฏเตเดŸเต† "เดฐเดพเดœเตเดฏเด‚" เดซเต€เตฝเดกเต (เดจเดฟเดฐ 3) เด…เดŸเด™เตเด™เตเดจเตเดจ เด’เดฐเต เดตเตƒเด•เตเดทเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เตเดฃเตเดŸเต†เดจเตเดจเต เดชเดฑเดฏเดพเด‚:

  • เดฏเตเด•เต†เดฏเดฟเตฝ เด†เดฐเดพเดฃเต เดœเต‹เดฒเดฟ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเต†เดจเตเดจเต เด…เดฑเดฟเดฏเดฃเดฎเต†เด™เตเด•เดฟเตฝ
  • เด—เตเดฐเต‡เดฑเตเดฑเต เดฌเตเดฐเดฟเดŸเตเดŸเดจเต† เดชเตเดฐเดคเดฟเดจเดฟเดงเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจ เดจเต‹เดกเต เดฒเดญเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เตพ เดฎเดฐเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดจเต‹เด•เตเด•เตเดจเตเดจเต
  • "UKnode" เดŽเดจเตเดจเดคเดฟเดจเตเดณเตเดณเดฟเตฝ เดจเดฟเด™เตเด™เตพ เดฏเตเด•เต† เดตเตผเด•เตเด•เตผ เดฑเต†เด•เตเด•เต‹เตผเดกเตเด•เดณเตเดŸเต† เดธเตเดฅเดพเดจเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเตเด‚.

เดจเดฟเด™เตเด™เตพ เด…เดฑเต‡ เดจเต‡เดฐเดฟเดŸเตเดŸเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ เดˆ เดคเดฟเดฐเดฏเดฒเดฟเดจเต N เด“เดชเตเดชเดฑเต‡เดทเดจเตเด•เตพเด•เตเด•เต เดชเด•เดฐเด‚ เดฒเต‹เด—เต(N) เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพเด•เตเด•เต เดšเดฟเดฒเดตเต เดตเดฐเตเด‚. เดจเดฟเด™เตเด™เตพ เด‡เดชเตเดชเต‹เตพ เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเดšเตเดšเดคเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดธเต‚เดšเดฟเด•.

เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เต€เด•เตพ (เด…เดคเดพเดฏเดคเต เดซเต€เตฝเดกเต เด—เตเดฐเต‚เดชเตเดชเตเด•เตพ) เดคเดพเดฐเดคเดฎเตเดฏเด‚ เดšเต†เดฏเตเดฏเดพเดจเตเดณเตเดณ เด’เดฐเต เดซเด‚เด—เตโ€Œเดทเตป เด‰เดณเตเดณเดฟเดŸเดคเตเดคเต‹เดณเด‚ เด•เดพเดฒเด‚, เดเดคเต เด—เตเดฐเต‚เดชเตเดชเดฟเดจเตเดฑเต† เดซเต€เตฝเดกเตเด•เตพเด•เตเด•เตเด‚ (เดธเตเดŸเตเดฐเดฟเด‚เด—เต, เดจเดฎเตเดชเตผ, 2 เดฒเตˆเดจเตเด•เตพ, เดจเดฎเตเดชเตผ, เดธเตเดŸเตเดฐเดฟเด‚เด—เต, เดคเต€เดฏเดคเดฟ...) เด’เดฐเต เด‡เตปเดกเด•เตเดธเต เดŸเตเดฐเต€ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚. เด•เต€เด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เด•เตเดฐเดฎเด‚ (เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดฒเต† เดเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เด…เดŸเดฟเดธเตเดฅเดพเดจ เดคเดฐเด™เตเด™เตพเด•เตเด•เต เด‡เดคเต เดฌเดพเดงเด•เดฎเดพเดฃเต).

เดฌเดฟ+เดŸเตเดฐเต€ เดธเต‚เดšเดฟเด•

เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดฎเต‚เดฒเตเดฏเด‚ เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดˆ เดฎเดฐเด‚ เดจเดจเตเดจเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด†เดตเดถเตเดฏเดฎเตเดณเตเดณเดชเตเดชเต‹เตพ เด’เดฐเต เดตเดฒเดฟเดฏ เดชเตเดฐเดถเตเดจเดฎเตเดฃเตเดŸเต เดฐเดฃเตเดŸเต เดฎเต‚เดฒเตเดฏเด™เตเด™เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เด’เดจเตเดจเดฟเดฒเดงเดฟเด•เด‚ เด˜เดŸเด•เด™เตเด™เตพ เดจเต‡เดŸเตเด•. เด‡เดคเดฟเดจเต O (N) เดšเดฟเดฒเดตเดพเด•เตเด‚, เด•เดพเดฐเดฃเด‚ เดจเดฟเด™เตเด™เตพ เดŸเตเดฐเต€เดฏเดฟเดฒเต† เด“เดฐเต‹ เดจเต‹เดกเตเด‚ เดจเต‹เด•เตเด•เตเด•เดฏเตเด‚ เด…เดคเต เดˆ เดฐเดฃเตเดŸเต เดฎเต‚เดฒเตเดฏเด™เตเด™เตพเด•เตเด•เดฟเดŸเดฏเดฟเดฒเดพเดฃเต‹ เดŽเดจเตเดจเต เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดตเต‡เดฃเด‚ (เด‰เดฆเดพ. เดŸเตเดฐเต€เดฏเตเดŸเต† เด’เดฐเต เด“เตผเดกเตผ เดŸเตเดฐเดพเดตเต‡เดธเตฝ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต). เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดจเดฟเด™เตเด™เตพ เดฎเตเดดเตเดตเตป เดŸเตเดฐเต€เดฏเตเด‚ เดตเดพเดฏเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเดฟเดจเดพเตฝ เดˆ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดกเดฟเดธเตเด•เต I/O เดธเต—เดนเตƒเดฆเดฎเดฒเตเดฒ. เด•เดพเดฐเตเดฏเด•เตเดทเดฎเดฎเดพเดฏเดฟ เดจเดฟเตผเดตเตเดตเดนเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฎเดพเตผเด—เด‚ เดจเดพเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต เดถเตเดฐเต‡เดฃเดฟ เด…เดญเตเดฏเตผเดคเตเดฅเดจ. เดˆ เดชเตเดฐเดถเตเดจเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดพเตป, เด†เดงเตเดจเดฟเด• เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดฌเดฟ+เดŸเตเดฐเต€ เดŽเดจเตเดจ เดฎเตเตป เดŸเตเดฐเต€เดฏเตเดŸเต† เดชเดฐเดฟเดทเตเด•เดฐเดฟเดšเตเดš เดชเดคเดฟเดชเตเดชเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต. เด’เดฐเต เดฌเดฟ+เดŸเตเดฐเต€ เดฎเดฐเดคเตเดคเดฟเตฝ:

  • เดเดฑเตเดฑเดตเตเด‚ เดคเดพเดดเตเดจเตเดจ เดจเต‹เดกเตเด•เตพ (เด‡เดฒเด•เตพ) เดฎเดพเดคเตเดฐเด‚ เดตเดฟเดตเดฐเด™เตเด™เตพ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเด• (เด…เดจเตเดฌเดจเตเดง เดชเดŸเตเดŸเดฟเด•เดฏเดฟเดฒเต† เดตเดฐเดฟเด•เดณเตเดŸเต† เดธเตเดฅเดพเดจเด‚)
  • เดฌเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เดจเต‹เดกเตเด•เตพ เด‡เดตเดฟเดŸเต†เดฏเตเดฃเตเดŸเต เดฑเต‚เดŸเตเดŸเดฟเด‚เด—เดฟเดจเดพเดฏเดฟ เดถเดฐเดฟเดฏเดพเดฏ เดจเต‹เดกเดฟเดฒเต‡เด•เตเด•เต เดคเดฟเดฐเดšเตเดšเดฟเตฝ เดธเดฎเดฏเดคเตเดคเต.

เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต (เดญเดพเด—เด‚ 1)

เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เดพเดฃเดพเดจเดพเด•เตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เด‡เดตเดฟเดŸเต† เด•เต‚เดŸเตเดคเตฝ เดจเต‹เดกเตเด•เตพ เด‰เดฃเตเดŸเต (เดฐเดฃเตเดŸเต เดคเดตเดฃ). เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, เดจเดฟเด™เตเด™เตพเด•เตเด•เต "เดกเดฟเดธเดฟเดทเตป เดจเต‹เดกเตเด•เตพ" เดŽเดจเตเดจ เด…เดงเดฟเด• เดจเต‹เดกเตเด•เตพ เด‰เดฃเตเดŸเต, เด…เดคเต เดถเดฐเดฟเดฏเดพเดฏ เดจเต‹เดกเต เด•เดฃเตเดŸเต†เดคเตเดคเดพเตป เดจเดฟเด™เตเด™เดณเต† เดธเดนเดพเดฏเดฟเด•เตเด•เตเด‚ (เด…เดคเต เด…เดจเตเดฌเดจเตเดง เดชเดŸเตเดŸเดฟเด•เดฏเดฟเดฒเต† เดตเดฐเดฟเด•เดณเตเดŸเต† เดธเตเดฅเดพเดจเด‚ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเต). เดŽเดจเตเดจเดพเตฝ เดคเดฟเดฐเดฏเตฝ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดค เด‡เดชเตเดชเต‹เดดเตเด‚ O(log(N)) เด†เดฃเต (เด’เดฐเต เดฒเต†เดตเตฝ เด•เต‚เดŸเดฟ เด‰เดฃเตเดŸเต). เดตเดฒเดฟเดฏ เดตเตเดฏเดคเตเดฏเดพเดธเด‚ เด…เดคเดพเดฃเต เดคเดพเดดเตเดจเตเดจ เดจเดฟเดฒเดฏเดฟเดฒเตเดณเตเดณ เดจเต‹เดกเตเด•เตพ เด…เดตเดฏเตเดŸเต† เดชเดฟเตปเด—เดพเดฎเดฟเด•เดณเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต.

เดˆ B+Tree เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, เดจเดฟเด™เตเด™เตพ 40 เดจเตเด‚ 100 เดจเตเด‚ เด‡เดŸเดฏเดฟเดฒเตเดณเตเดณ เดฎเต‚เดฒเตเดฏเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ เดคเดฟเดฐเดฏเตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ:

  • เดจเดฟเด™เตเด™เตพ เดฎเตเดฎเตเดชเดคเตเดคเต† เดŸเตเดฐเต€เดฏเดฟเตฝ เดšเต†เดฏเตเดคเดคเตเดชเต‹เดฒเต† 40 (เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ 40 เด‡เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ 40 เดจเต เดถเต‡เดทเดฎเตเดณเตเดณ เดเดฑเตเดฑเดตเตเด‚ เด…เดŸเตเดคเตเดค เดฎเต‚เดฒเตเดฏเด‚) เดจเต‹เด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต.
  • เดจเดฟเด™เตเด™เตพ 40 เตฝ เดŽเดคเตเดคเตเดจเตเดจเดคเตเดตเดฐเต† เดจเต‡เดฐเดฟเดŸเตเดŸเตเดณเตเดณ เด…เดตเด•เดพเดถ เดฒเดฟเด™เตเด•เตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต 100 เด…เดตเด•เดพเดถเดฟเด•เดณเต† เดถเต‡เด–เดฐเดฟเด•เตเด•เตเด•.

เดจเดฟเด™เตเด™เตพ M เดชเดฟเตปเด—เดพเดฎเดฟเด•เดณเต† เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏเต†เดจเตเดจเตเด‚ เดตเตƒเด•เตเดทเดคเตเดคเดฟเดจเต N เดจเต‹เดกเตเด•เตพ เด‰เดฃเตเดŸเต†เดจเตเดจเตเด‚ เดชเดฑเดฏเดพเด‚. เด’เดฐเต เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเดŸ เดจเต‹เดกเต เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเดคเตเดคเต† เดŸเตเดฐเต€ เดชเต‹เดฒเต† เดฒเต‹เด—เต (N) เดšเดฟเดฒเดตเดพเด•เตเด‚. เดŽเดจเตเดจเดพเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดˆ เดจเต‹เดกเต เดฒเดญเดฟเดšเตเดšเตเด•เดดเดฟเดžเตเดžเดพเตฝ, M เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต M เดชเดฟเตปเด—เดพเดฎเดฟเด•เดณเต† เด…เดตเดฐเตเดŸเต† เดชเดฟเตปเด—เดพเดฎเดฟเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดฑเดซเดฑเตปเดธเตเด•เตพ เดฒเดญเดฟเด•เตเด•เตเด‚. เดˆ เดคเดฟเดฐเดฏเดฒเดฟเดจเต M+log(N) เดฎเดพเดคเตเดฐเดฎเต‡ เดšเต†เดฒเดตเดพเด•เต‚ เดฎเตเดฎเตเดชเดคเตเดคเต† เดŸเตเดฐเต€เดฏเดฟเดฒเต† N เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเดฎเดพเดฏเดฟ เดคเดพเดฐเดคเดฎเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ. เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดจเดฟเด™เตเด™เตพ เดฎเตเดดเตเดตเตป เดŸเตเดฐเต€เดฏเตเด‚ (M+log(N) เดจเต‹เดกเตเด•เตพ เดฎเดพเดคเตเดฐเด‚) เดตเดพเดฏเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒ, เด…เดคเดพเดฏเดคเต เดกเดฟเดธเตเด•เต เด‰เดชเดฏเต‹เด—เด‚ เด•เตเดฑเดตเดพเดฃเต. M เดšเต†เดฑเตเดคเดพเดฃเต†เด™เตเด•เดฟเตฝ (เด‰เดฆเดพ. 200 เดตเดฐเดฟเด•เตพ), N เดตเดฒเตเดคเดพเดฃเต†เด™เตเด•เดฟเตฝ (1 เดตเดฐเดฟเด•เตพ), เดตเดฒเดฟเดฏ เดตเตเดฏเดคเตเดฏเดพเดธเด‚ เด‰เดฃเตเดŸเดพเด•เตเด‚.

เดŽเดจเตเดจเดพเตฝ เด‡เดตเดฟเดŸเต† เดชเตเดคเดฟเดฏ เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เด‰เดฃเตเดŸเต (เดตเต€เดฃเตเดŸเตเด‚!). เดจเดฟเด™เตเด™เตพ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตฝ เด’เดฐเต เดตเดฐเดฟ เดšเต‡เตผเด•เตเด•เตเด•เดฏเต‹ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตเด•เดฏเต‹ เดšเต†เดฏเตเดฏเตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ (เด…เดคเดฟเดจเดพเตฝ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸ B+Tree เดธเต‚เดšเดฟเด•เดฏเดฟเตฝ):

  • เดจเดฟเด™เตเด™เตพ เด’เดฐเต B+Tree เด‰เดณเตเดณเดฟเดฒเต† เดจเต‹เดกเตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เด•เตเดฐเดฎเด‚ เดชเดพเดฒเดฟเด•เตเด•เดฃเด‚, เด…เดฒเตเดฒเดพเดคเตเดคเดชเด•เตเดทเด‚ เดคเดฐเด‚เดคเดฟเดฐเดฟเด•เตเด•เดพเดคเตเดค เด’เดฐเต เดฎเดฐเดคเตเดคเดฟเดจเตเดณเตเดณเดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดจเต‹เดกเตเด•เตพ เด•เดฃเตเดŸเต†เดคเตเดคเดพเตป เด•เดดเดฟเดฏเดฟเดฒเตเดฒ.
  • B+Tree-เตฝ เดธเดพเดงเตเดฏเดฎเดพเดฏ เดเดฑเตเดฑเดตเตเด‚ เด•เตเดฑเดžเตเดž เดฒเต†เดตเดฒเตเด•เตพ เดจเดฟเด™เตเด™เตพ เดธเต‚เด•เตเดทเดฟเด•เตเด•เดฃเด‚, เด…เดฒเตเดฒเดพเดคเตเดคเดชเด•เตเดทเด‚ O(เดฒเต‹เด—เต(N)) เดธเดฎเดฏ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดค O(N) เด†เดฏเดฟ เดฎเดพเดฑเตเดจเตเดจเต.

เดฎเดฑเตเดฑเตŠเดฐเต เดตเดฟเดงเดคเตเดคเดฟเตฝ เดชเดฑเดžเตเดžเดพเตฝ, B+Tree เดธเตเดตเดฏเด‚ เด•เตเดฐเดฎเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเตเด‚ เดธเดจเตเดคเตเดฒเดฟเดคเดตเตเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚. เดญเดพเด—เตเดฏเดตเดถเดพเตฝ, เดธเตเดฎเดพเตผเดŸเตเดŸเต เดกเดฟเดฒเต€เดฑเตเดฑเต, เด‡เตปเดธเต‡เตผเดŸเตเดŸเต เด“เดชเตเดชเดฑเต‡เดทเดจเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด‡เดคเต เดธเดพเดงเตเดฏเดฎเดพเดฃเต. เดŽเดจเตเดจเดพเตฝ เด‡เดคเดฟเดจเต เดšเดฟเดฒเดตเต เดตเดฐเตเด‚: เด’เดฐเต B+ เดŸเตเดฐเต€เดฏเดฟเดฒเต† เด‡เตปเดธเต‡เตผเดทเดจเตเด•เดณเตเด‚ เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดฒเตเด•เดณเตเด‚ เดตเดฟเดฒ O(เดฒเต‹เด—เต(N)) เด†เดฃเต. เด…เดคเตเด•เตŠเดฃเตเดŸเดพเดฃเต เดจเดฟเด™เตเด™เดณเดฟเตฝ เดšเดฟเดฒเตผ เด…เดคเต เด•เต‡เดŸเตเดŸเดคเต เดตเดณเดฐเต†เดฏเดงเดฟเด•เด‚ เดธเต‚เดšเดฟเด•เด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต เดจเดฒเตเดฒ เด†เดถเดฏเดฎเดฒเตเดฒ. เดถเดฐเดฟเด•เตเด•เตเด‚, เด’เดฐเต เดชเดŸเตเดŸเดฟเด•เดฏเดฟเตฝ เด’เดฐเต เดตเดฐเดฟ เดตเต‡เด—เดคเตเดคเดฟเตฝ เดšเต‡เตผเด•เตเด•เตฝ/เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต/เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เตฝ เดŽเดจเตเดจเดฟเดต เดจเดฟเด™เตเด™เตพ เดฎเดจเตเดฆเด—เดคเดฟเดฏเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเตเด•เดพเดฐเดฃเด‚ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเดจเต เด“เดฐเต‹ เดธเต‚เดšเดฟเด•เดฏเตเด•เตเด•เตเด‚ เดตเดฟเดฒเดฏเต‡เดฑเดฟเดฏ O(log(N)) เด“เดชเตเดชเดฑเต‡เดทเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดชเดŸเตเดŸเดฟเด•เดฏเตเดŸเต† เดธเต‚เดšเดฟเด•เด•เตพ เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดธเต‚เดšเดฟเด•เด•เตพ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเดคเต เด•เต‚เดŸเตเดคเตฝ เดœเต‹เดฒเดฟเดญเดพเดฐเด‚ เดŽเดจเตเดจเดพเดฃเต เด…เตผเดคเตเดฅเดฎเดพเด•เตเด•เตเดจเตเดจเดคเต เด‡เดŸเดชเดพเดŸเต เดฎเดพเดจเต‡เดœเตผ (เดฒเต‡เด–เดจเดคเตเดคเดฟเดจเตเดฑเต† เด…เดตเดธเดพเดจเด‚ เดตเดฟเดตเดฐเดฟเด•เตเด•เตเด‚).

เด•เต‚เดŸเตเดคเตฝ เดตเดฟเดตเดฐเด™เตเด™เตพเด•เตเด•เต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดตเดฟเด•เตเด•เดฟเดชเต€เดกเดฟเดฏเดฏเดฟเดฒเต† เดฒเต‡เด–เดจเด‚ เด•เดพเดฃเดพเด‚ B+เดตเตƒเด•เตเดทเด‚. เด’เดฐเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตฝ B+Tree เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เด‰เดฆเดพเดนเดฐเดฃเด‚ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดตเต‡เดฃเดฎเต†เด™เตเด•เดฟเตฝ, เดจเต‹เด•เตเด•เตเด• เดˆ เดฒเต‡เด–เดจเด‚ ะธ เดˆ เดฒเต‡เด–เดจเด‚ เด’เดฐเต เดชเตเดฐเดฎเตเด– MySQL เดกเดตเดฒเดชเตเดชเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต. InnoDB (MySQL เดŽเดžเตเดšเดฟเตป) เดธเต‚เดšเดฟเด•เด•เตพ เดŽเด™เตเด™เดจเต† เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต เดŽเดจเตเดจเดคเดฟเตฝ เด‡เดฐเตเดตเดฐเตเด‚ เดถเตเดฐเดฆเตเดง เด•เต‡เดจเตเดฆเตเดฐเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต.

เด•เตเดฑเดฟเดชเตเดชเต: เดคเดพเดดเตเดจเตเดจ เดจเดฟเดฒเดฏเดฟเดฒเตเดณเตเดณ เด’เดชเตเดฑเตเดฑเดฟเดฎเตˆเดธเต‡เดทเดจเตเด•เตพ เด•เดพเดฐเดฃเด‚, B+ เดŸเตเดฐเต€ เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏเตเด‚ เดธเดจเตเดคเตเดฒเดฟเดคเดฎเดพเด•เดฃเดฎเต†เดจเตเดจเต เด’เดฐเต เดตเดพเดฏเดจเด•เตเด•เดพเดฐเตป เดŽเดจเตเดจเต‹เดŸเต เดชเดฑเดžเตเดžเต.

เดนเดพเดทเตโ€ŒเดŸเต‡เดฌเดฟเตพ

เดžเด™เตเด™เดณเตเดŸเต† เด…เดตเดธเดพเดจเดคเตเดคเต† เดชเตเดฐเดงเดพเดจเดชเตเดชเต†เดŸเตเดŸ เดกเดพเดฑเตเดฑเดพ เด˜เดŸเดจ เดนเดพเดทเต เดชเดŸเตเดŸเดฟเด•เดฏเดพเดฃเต. เดจเดฟเด™เตเด™เตพ เดฎเต‚เดฒเตเดฏเด™เตเด™เตพ เดตเต‡เด—เดคเตเดคเดฟเตฝ เดจเต‹เด•เตเด•เดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เด‡เดคเต เดตเดณเดฐเต† เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเดฃเต. เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เด’เดฐเต เดนเดพเดทเต เดŸเต‡เดฌเดฟเตพ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเต เดชเดฟเดจเตเดจเต€เดŸเต เด’เดฐเต เดนเดพเดทเต เดœเต‹เดฏเดฟเตป เดŽเดจเตเดจ เดชเตŠเดคเตเดตเดพเดฏ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เดœเต‹เดฏเดฟเตป เด“เดชเตเดชเดฑเต‡เดทเตป เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดพเตป เดžเด™เตเด™เดณเต† เดธเดนเดพเดฏเดฟเด•เตเด•เตเด‚ ( เดนเดพเดทเต เดšเต‡เดฐเตเด•). เดšเดฟเดฒ เด†เดจเตเดคเดฐเดฟเด• เด•เดพเดฐเตเดฏเด™เตเด™เตพ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดˆ เดกเดพเดฑเตเดฑเดพ เด˜เดŸเดจ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต (เด‰เดฆเดพ. เดฒเต‹เด•เตเด•เต เดŸเต‡เดฌเดฟเตพ เด…เดฅเดตเดพ เดฌเดซเตผ เดชเต‚เตพ, เดˆ เดฐเดฃเตเดŸเต เด†เดถเดฏเด™เตเด™เดณเตเด‚ เดจเดฎเตเด•เตเด•เต เดชเดฟเดจเตเดจเต€เดŸเต เด•เดพเดฃเดพเด‚).

เด’เดฐเต เด˜เดŸเด•เดคเตเดคเต† เด…เดคเดฟเดจเตเดฑเต† เด•เต€ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดตเต‡เด—เดคเตเดคเดฟเตฝ เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจ เด’เดฐเต เดกเดพเดฑเตเดฑเดพ เด˜เดŸเดจเดฏเดพเดฃเต เดนเดพเดทเต เดŸเต‡เดฌเดฟเตพ. เด’เดฐเต เดนเดพเดทเต เดŸเต‡เดฌเดฟเตพ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดจเดฟเด™เตเด™เตพ เดจเดฟเตผเดตเดšเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต:

  • เด•เตเดฒเต‹เดตเต เดจเดฟเด™เตเด™เดณเตเดŸเต† เด˜เดŸเด•เด™เตเด™เตพเด•เตเด•เต
  • เดนเดพเดทเต เดซเด‚เด—เตเดทเตป เด•เต€เด•เตพเด•เตเด•เดพเดฏเดฟ. เด•เดฎเตเดชเตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดค เด•เต€ เดนเดพเดทเตเด•เตพ เดฎเต‚เดฒเด•เด™เตเด™เดณเตเดŸเต† เดธเตเดฅเดพเดจเด‚ เดจเตฝเด•เตเดจเตเดจเต (เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเดคเต เดธเต†เด—เตเดฎเต†เดจเตเดฑเตเด•เตพ ).
  • เด•เต€เด•เตพ เดคเดพเดฐเดคเดฎเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚. เดจเดฟเด™เตเด™เตพ เดถเดฐเดฟเดฏเดพเดฏ เดธเต†เด—เตโ€Œเดฎเต†เดจเตเดฑเต เด•เดฃเตเดŸเต†เดคเตเดคเดฟเด•เตเด•เดดเดฟเดžเตเดžเดพเตฝ, เดˆ เดคเดพเดฐเดคเดฎเตเดฏเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดธเต†เด—เตโ€Œเดฎเต†เดจเตเดฑเดฟเดจเตเดณเตเดณเดฟเตฝ เดจเดฟเด™เตเด™เตพ เดคเดฟเดฐเดฏเตเดจเตเดจ เด˜เดŸเด•เด‚ เด•เดฃเตเดŸเต†เดคเตเดคเดฃเด‚.

เดฒเดณเดฟเดคเดฎเดพเดฏ เด‰เดฆเดพเดนเดฐเดฃเด‚

เดจเดฎเตเด•เตเด•เต เดตเตเดฏเด•เตเดคเดฎเดพเดฏ เด’เดฐเต เด‰เดฆเดพเดนเดฐเดฃเด‚ เดŽเดŸเตเด•เตเด•เดพเด‚:

เดฑเดฟเดฒเต‡เดทเดฃเตฝ เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เตพ เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต (เดญเดพเด—เด‚ 1)

เดˆ เดนเดพเดทเต เดŸเต‡เดฌเดฟเดณเดฟเตฝ 10 เดธเต†เด—เตโ€Œเดฎเต†เดจเตเดฑเตเด•เดณเตเดฃเตเดŸเต. เดžเดพเตป เดฎเดŸเดฟเดฏเดจเดพเดฏเดคเดฟเดจเดพเตฝ, เดžเดพเตป 5 เดธเต†เด—เตโ€Œเดฎเต†เดจเตเดฑเตเด•เตพ เดฎเดพเดคเตเดฐเดฎเต‡ เดšเดฟเดคเตเดฐเต€เด•เดฐเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดณเตเดณเต‚, เดชเด•เตเดทเต‡ เดจเดฟเด™เตเด™เตพ เดฎเดฟเดŸเตเด•เตเด•เดจเดพเดฃเต†เดจเตเดจเต เดŽเดจเดฟเด•เตเด•เดฑเดฟเดฏเดพเด‚, เด…เดคเดฟเดจเดพเตฝ เดฎเดฑเตเดฑเต 5 เดŽเดฃเตเดฃเด‚ เดธเตเดตเดฏเด‚ เดšเดฟเดคเตเดฐเต€เด•เดฐเดฟเด•เตเด•เดพเตป เดžเดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด‚. เดžเดพเตป เด•เต€เดฏเตเดŸเต† เด’เดฐเต เดนเดพเดทเต เดซเด‚เด—เตเดทเตป เดฎเต‹เดกเตเดฒเต‹ 10 เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต. เดฎเดฑเตเดฑเตŠเดฐเต เดตเดฟเดงเดคเตเดคเดฟเตฝ เดชเดฑเดžเตเดžเดพเตฝ, เดฎเต‚เดฒเด•เดคเตเดคเดฟเดจเตเดฑเต† เดธเต†เด—เตโ€Œเดฎเต†เดจเตเดฑเต เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเดคเดฟเดจเต เด…เดคเดฟเดจเตเดฑเต† เด•เต€เดฏเตเดŸเต† เด…เดตเดธเดพเดจ เด…เด•เตเด•เด‚ เดฎเดพเดคเตเดฐเดฎเดพเดฃเต เดžเดพเตป เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต:

  • เด…เดตเดธเดพเดจ เด…เด•เตเด•เด‚ 0 เด†เดฃเต†เด™เตเด•เดฟเตฝ, เดฎเต‚เดฒเด•เด‚ เดธเต†เด—เตโ€Œเดฎเต†เดจเตเดฑเต 0 เด†เดฏเดฟ เดตเดฐเตเด‚,
  • เด…เดตเดธเดพเดจ เด…เด•เตเด•เด‚ 1 เด†เดฃเต†เด™เตเด•เดฟเตฝ, เดฎเต‚เดฒเด•เด‚ เดธเต†เด—เตโ€Œเดฎเต†เดจเตเดฑเต 1 เด†เดฏเดฟ เดตเดฐเตเด‚,
  • เด…เดตเดธเดพเดจ เด…เด•เตเด•เด‚ 2 เด†เดฃเต†เด™เตเด•เดฟเตฝ, เดฎเต‚เดฒเด•เด‚ เดเดฐเดฟเดฏ 2-เตฝ เดชเดคเดฟเด•เตเด•เตเดจเตเดจเต,
  • เดชเด™เตเด•เต โ‚ฌ |

เดžเดพเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดš เดคเดพเดฐเดคเดฎเตเดฏ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดฐเดฃเตเดŸเต เดชเต‚เตผเดฃเตเดฃเดธเด‚เด–เตเดฏเด•เตพ เดคเดฎเตเดฎเดฟเดฒเตเดณเตเดณ เดคเตเดฒเตเดฏเดคเดฏเดพเดฃเต.

เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดŽเดฒเดฎเต†เดจเตเดฑเต 78 เดฒเดญเดฟเด•เตเด•เดฃเดฎเต†เดจเตเดจเต เดชเดฑเดฏเดพเด‚:

  • เดนเดพเดทเต เดŸเต‡เดฌเดฟเตพ 78-เดจเตเดณเตเดณ เดนเดพเดทเต เด•เต‹เดกเต เด•เดฃเด•เตเด•เดพเด•เตเด•เตเดจเตเดจเต, เด…เดคเต 8 เด†เดฃเต.
  • เดนเดพเดทเต เดŸเต‡เดฌเดฟเตพ เดธเต†เด—เตเดฎเต†เดจเตเดฑเต 8-เตฝ เดจเต‹เด•เตเด•เตเดจเตเดจเต, เด…เดคเต เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจ เด†เดฆเตเดฏเดคเตเดคเต† เด˜เดŸเด•เด‚ 78 เด†เดฃเต.
  • เด…เดตเตพ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดจเด‚ 78 เดคเดฟเดฐเดฟเด•เต† เดจเตฝเด•เตเดจเตเดจเต
  • เดคเดฟเดฐเดฏเตฝ เดšเต†เดฒเดตเต 2 เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดฎเดพเดคเตเดฐเด‚ (เด’เดจเตเดจเต เดนเดพเดทเต เดฎเต‚เดฒเตเดฏเด‚ เด•เดฃเด•เตเด•เดพเด•เตเด•เดพเดจเตเด‚ เดฎเดฑเตเดฑเตŠเดจเตเดจเต เดธเต†เด—เตโ€Œเดฎเต†เดจเตเดฑเดฟเดจเตเดณเตเดณเดฟเดฒเต† เดฎเต‚เดฒเด•เด‚ เดจเต‹เด•เตเด•เดพเดจเตเด‚).

เด‡เดชเตเดชเต‹เตพ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดŽเดฒเดฎเต†เดจเตเดฑเต 59 เดฒเดญเดฟเด•เตเด•เดฃเดฎเต†เดจเตเดจเต เดชเดฑเดฏเดพเด‚:

  • เดนเดพเดทเต เดŸเต‡เดฌเดฟเตพ 59-เดจเตเดณเตเดณ เดนเดพเดทเต เด•เต‹เดกเต เด•เดฃเด•เตเด•เดพเด•เตเด•เตเดจเตเดจเต, เด…เดคเต 9 เด†เดฃเต.
  • เดธเต†เด—เตโ€Œเดฎเต†เดจเตเดฑเต 9-เตฝ เดนเดพเดทเต เดŸเต‡เดฌเดฟเตพ เดคเดฟเดฐเดฏเตเดจเตเดจเต, เด†เดฆเตเดฏเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏ เดฎเต‚เดฒเด•เด‚ 99 เด†เดฃเต. 99!=59 เดฎเตเดคเตฝ, เด˜เดŸเด•เด‚ 99 เด’เดฐเต เดธเดพเดงเตเดตเดพเดฏ เด˜เดŸเด•เดฎเดฒเตเดฒ.
  • เด…เดคเต‡ เดฏเตเด•เตเดคเดฟ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† เด˜เดŸเด•เด‚ (9), เดฎเต‚เดจเตเดจเดพเดฎเดคเตเดคเต‡เดคเต (79), ..., เด…เดตเดธเดพเดจเดคเตเดคเต‡เดคเต (29) เดŽเดŸเตเด•เตเด•เตเดจเตเดจเต.
  • เด˜เดŸเด•เด‚ เด•เดฃเตเดŸเต†เดคเตเดคเดฟเดฏเดฟเดฒเตเดฒ.
  • เดคเดฟเดฐเดšเตเดšเดฟเดฒเดฟเดจเต 7 เด“เดชเตเดชเดฑเต‡เดทเดจเตเด•เตพ เดšเต†เดฒเดตเดพเดฏเดฟ.

เดจเดฒเตเดฒ เดนเดพเดทเต เดซเด‚เด—เตเดทเตป

เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เดพเดฃเดพเดจเดพเด•เตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เดจเดฟเด™เตเด™เตพ เดคเดฟเดฐเดฏเตเดจเตเดจ เดฎเต‚เดฒเตเดฏเดคเตเดคเต† เด†เดถเตเดฐเดฏเดฟเดšเตเดšเต, เดšเต†เดฒเดตเต เดธเดฎเดพเดจเดฎเดฒเตเดฒ!

เดžเดพเตป เด‡เดชเตเดชเต‹เตพ เด•เต€เดฏเตเดŸเต† เดฎเตŠเดกเตเดฏเต‚เดณเต‹ 1 เดŽเดจเตเดจ เดนเดพเดทเต เดซเด‚เด—เตโ€Œเดทเตป เดฎเดพเดฑเตเดฑเตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ (เด…เดคเดพเดฏเดคเต, เด…เดตเดธเดพเดจ 000 เด…เด•เตเด•เด™เตเด™เตพ เดŽเดŸเตเด•เตเด•เตเดฎเตเดชเต‹เตพ), เดธเต†เด—เตโ€Œเดฎเต†เดจเตเดฑเต 000-เตฝ เด˜เดŸเด•เด™เตเด™เดณเตŠเดจเตเดจเตเด‚ เด‡เดฒเตเดฒเดพเดคเตเดคเดคเดฟเดจเดพเตฝ เดฐเดฃเตเดŸเดพเดฎเดคเตเดคเต† เดฒเตเด•เตเด•เดชเตเดชเดฟเดจเต 6 เด“เดชเตเดชเดฑเต‡เดทเตป เดฎเดพเดคเตเดฐเดฎเต‡ เดšเต†เดฒเดตเดพเด•เต‚. เดตเดณเดฐเต† เดšเต†เดฑเดฟเดฏ เดŽเดฃเตเดฃเด‚ เด˜เดŸเด•เด™เตเด™เตพ เด…เดŸเด™เตเด™เดฟเดฏ เดฌเด•เตเด•เดฑเตเดฑเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดจเดฒเตเดฒ เดนเดพเดทเต เดซเด‚เด—เตเดทเตป เด•เดฃเตเดŸเต†เดคเตเดคเตเด• เดŽเดจเตเดจเดคเดพเดฃเต เดฏเดฅเดพเตผเดคเตเดฅ เดตเต†เดฒเตเดฒเตเดตเดฟเดณเดฟ.

เดŽเดจเตเดฑเต† เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ, เด’เดฐเต เดจเดฒเตเดฒ เดนเดพเดทเต เดซเด‚เด—เตเดทเตป เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเดคเต เดŽเดณเตเดชเตเดชเดฎเดพเดฃเต. เดŽเดจเตเดจเดพเตฝ เด‡เดคเตŠเดฐเต เดฒเดณเดฟเดคเดฎเดพเดฏ เด‰เดฆเดพเดนเดฐเดฃเดฎเดพเดฃเต, เด•เต€ เด†เดฏเดฟเดฐเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เด’เดฐเต เดจเดฒเตเดฒ เดนเดพเดทเต เดซเด‚เด—เตเดทเตป เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเดคเต เด•เต‚เดŸเตเดคเตฝ เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเดพเดฃเต:

  • เดธเตเดŸเตเดฐเดฟเด‚เด—เต (เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต - เด…เดตเดธเดพเดจ เดจเดพเดฎเด‚)
  • 2 เดตเดฐเดฟเด•เตพ (เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต - เด…เดตเดธเดพเดจ เดจเดพเดฎเดตเตเด‚ เด†เดฆเตเดฏ เดชเต‡เดฐเตเด‚)
  • 2 เดตเดฐเดฟเด•เดณเตเด‚ เดคเต€เดฏเดคเดฟเดฏเตเด‚ (เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต - เด…เดตเดธเดพเดจ เดจเดพเดฎเด‚, เด†เดฆเตเดฏ เดจเดพเดฎเด‚, เดœเดจเดจเดคเตเดคเต€เดฏเดคเดฟ)
  • เดชเด™เตเด•เต โ‚ฌ |

เด’เดฐเต เดจเดฒเตเดฒ เดนเดพเดทเต เดซเด‚เด—เตโ€Œเดทเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, เดนเดพเดทเต เดŸเต‡เดฌเดฟเตพ เดฒเตเด•เตเด•เดชเตเดชเตเด•เดณเตเดŸเต† เดตเดฟเดฒ O(1).

เด…เดฑเต‡ vs เดนเดพเดทเต เดŸเต‡เดฌเดฟเตพ

เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต เด’เดฐเต เด…เดฑเต‡ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฐเตเดคเต?

เดนเตเด‚, เดจเดฒเตเดฒ เดšเต‹เดฆเตเดฏเด‚.

  • เดนเดพเดทเต เดŸเต‡เดฌเดฟเตพ เด†เด•เดพเด‚ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเดฒเต‡เด•เตเด•เต เดญเดพเด—เดฟเด•เดฎเดพเดฏเดฟ เดฒเต‹เดกเต เดšเต†เดฏเตเดคเต, เดถเต‡เดทเดฟเด•เตเด•เตเดจเตเดจ เดธเต†เด—เตเดฎเต†เดจเตเดฑเตเด•เตพ เดกเดฟเดธเตเด•เดฟเตฝ เดคเตเดŸเดฐเดพเด‚.
  • เด’เดฐเต เด…เดฑเต‡ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เตพ เดฎเต†เดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดคเตเดŸเตผเดšเตเดšเดฏเดพเดฏ เด‡เดŸเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฃเด‚. เดจเดฟเด™เตเด™เตพ เด’เดฐเต เดตเดฒเดฟเดฏ เดŸเต‡เดฌเดฟเตพ เดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ เดฎเดคเดฟเดฏเดพเดฏ เดคเตเดŸเตผเดšเตเดšเดฏเดพเดฏ เด‡เดŸเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเตเดจเตเดจเดคเต เดตเดณเดฐเต† เดฌเตเดฆเตเดงเดฟเดฎเตเดŸเตเดŸเดพเดฃเต.
  • เด’เดฐเต เดนเดพเดทเต เดŸเต‡เดฌเดฟเดณเดฟเดจเดพเดฏเดฟ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด†เดตเดถเตเดฏเดฎเตเดณเตเดณ เด•เต€ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เดพเด‚ (เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดฐเดพเดœเตเดฏเดคเตเดคเดฟเดจเตเดฑเต†เดฏเตเด‚ เดตเตเดฏเด•เตเดคเดฟเดฏเตเดŸเต†เดฏเตเด‚ เด…เดตเดธเดพเดจ เดจเดพเดฎเด‚).

เด•เต‚เดŸเตเดคเตฝ เดตเดฟเดตเดฐเด™เตเด™เตพเด•เตเด•เต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดฒเต‡เด–เดจเด‚ เดตเดพเดฏเดฟเด•เตเด•เดพเด‚ เดœเดพเดตเดนเดพเดทเตโ€Œเดฎเดพเดชเตเดชเต, เด‡เดคเต เด’เดฐเต เดนเดพเดทเต เดŸเต‡เดฌเดฟเดณเดฟเดจเตเดฑเต† เด•เดพเดฐเตเดฏเด•เตเดทเดฎเดฎเดพเดฏ เดจเดฟเตผเดตเตเดตเดนเดฃเดฎเดพเดฃเต; เดˆ เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เด†เดถเดฏเด™เตเด™เตพ เดฎเดจเดธเดฟเดฒเดพเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เตพ เดœเดพเดต เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒ.

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•