{"id":694,"date":"2025-08-14T21:52:04","date_gmt":"2025-08-14T14:52:04","guid":{"rendered":"https:\/\/kienthucmo.com\/?p=694"},"modified":"2026-01-14T21:02:26","modified_gmt":"2026-01-14T14:02:26","slug":"cau-truc-du-lieu-va-giai-thuat-la-gi-kien-thuc-co-ban-cho-nguoi-moi-bat-dau","status":"publish","type":"post","link":"https:\/\/kienthucmo.com\/vi\/cau-truc-du-lieu-va-giai-thuat-la-gi-kien-thuc-co-ban-cho-nguoi-moi-bat-dau\/","title":{"rendered":"C\u1ea5u tr\u00fac d\u1eef li\u1ec7u v\u00e0 Gi\u1ea3i thu\u1eadt l\u00e0 g\u00ec? Ki\u1ebfn th\u1ee9c c\u01a1 b\u1ea3n cho ng\u01b0\u1eddi m\u1edbi b\u1eaft \u0111\u1ea7u"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Trong th\u1ebf gi\u1edbi l\u1eadp tr\u00ecnh, <strong>c\u1ea5u tr\u00fac d\u1eef li\u1ec7u<\/strong> (Data Structures) v\u00e0 <strong>gi\u1ea3i thu\u1eadt<\/strong> (Algorithms) gi\u1ed1ng nh\u01b0 x\u01b0\u01a1ng s\u1ed1ng v\u00e0 b\u1ed9 n\u00e3o c\u1ee7a ph\u1ea7n m\u1ec1m.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>C\u1ea5u tr\u00fac d\u1eef li\u1ec7u gi\u00fap b\u1ea1n t\u1ed5 ch\u1ee9c v\u00e0 l\u01b0u tr\u1eef d\u1eef li\u1ec7u m\u1ed9t c\u00e1ch khoa h\u1ecdc.<\/li>\n\n\n\n<li>Gi\u1ea3i thu\u1eadt gi\u00fap b\u1ea1n x\u1eed l\u00fd d\u1eef li\u1ec7u m\u1ed9t c\u00e1ch nhanh ch\u00f3ng v\u00e0 ch\u00ednh x\u00e1c.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">M\u1ed9t l\u1eadp tr\u00ecnh vi\u00ean gi\u1ecfi kh\u00f4ng ch\u1ec9 bi\u1ebft vi\u1ebft ch\u01b0\u01a1ng tr\u00ecnh ch\u1ea1y \u0111\u01b0\u1ee3c, m\u00e0 c\u00f2n bi\u1ebft t\u1ed1i \u01b0u h\u00f3a th\u1eddi gian v\u00e0 b\u1ed9 nh\u1edb, nh\u1edd v\u00e0o vi\u1ec7c ch\u1ecdn c\u1ea5u tr\u00fac d\u1eef li\u1ec7u v\u00e0 gi\u1ea3i thu\u1eadt ph\u00f9 h\u1ee3p. Trong b\u00e0i vi\u1ebft n\u00e0y h\u00e3y c\u00f9ng m\u00ecnh  t\u00ecm hi\u1ec3u  v\u1ec1 <strong>c\u1ea5u tr\u00fac d\u1eef li\u1ec7u v\u00e0 gi\u1ea3i thu\u1eadt<\/strong>: t\u1eeb kh\u00e1i ni\u1ec7m c\u01a1 b\u1ea3n, c\u00e1c lo\u1ea1i ph\u1ed5 bi\u1ebfn, cho \u0111\u1ebfn c\u00e1ch ch\u00fang ph\u1ed1i h\u1ee3p v\u1edbi nhau \u0111\u1ec3 t\u1ea1o n\u00ean nh\u1eefng ch\u01b0\u01a1ng tr\u00ecnh v\u1eeba nhanh v\u1eeba \u201cti\u1ebft ki\u1ec7m t\u00e0i nguy\u00ean\u201d.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"930\" height=\"391\" src=\"https:\/\/kienthucmo.com\/wp-content\/uploads\/dat-structures-and-algorithms.webp\" alt=\"C\u1ea5u tr\u00fac d\u1eef li\u1ec7u v\u00e0 gi\u1ea3i thu\u1eadt\n\" class=\"wp-image-697\" srcset=\"https:\/\/kienthucmo.com\/wp-content\/uploads\/dat-structures-and-algorithms.webp 930w, https:\/\/kienthucmo.com\/wp-content\/uploads\/dat-structures-and-algorithms-300x126.webp 300w, https:\/\/kienthucmo.com\/wp-content\/uploads\/dat-structures-and-algorithms-768x323.webp 768w\" sizes=\"(max-width: 930px) 100vw, 930px\" \/><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\">1. C\u1ea5u tr\u00fac d\u1eef li\u1ec7u l\u00e0 g\u00ec?<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1.1.  \u0110\u1ecbnh ngh\u0129a<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>C\u1ea5u tr\u00fac d\u1eef li\u1ec7u<\/strong> (<em>Data Structure<\/em>) l\u00e0 c\u00e1ch s\u1eafp x\u1ebfp, t\u1ed5 ch\u1ee9c v\u00e0 l\u01b0u tr\u1eef d\u1eef li\u1ec7u trong m\u00e1y t\u00ednh sao cho ta c\u00f3 th\u1ec3 truy c\u1eadp v\u00e0 x\u1eed l\u00fd ch\u00fang m\u1ed9t c\u00e1ch hi\u1ec7u qu\u1ea3.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/kienthucmo.com\/wp-content\/uploads\/data-structuires-1024x576.jpg\" alt=\"\" class=\"wp-image-698\" srcset=\"https:\/\/kienthucmo.com\/wp-content\/uploads\/data-structuires-1024x576.jpg 1024w, https:\/\/kienthucmo.com\/wp-content\/uploads\/data-structuires-300x169.jpg 300w, https:\/\/kienthucmo.com\/wp-content\/uploads\/data-structuires-768x432.jpg 768w, https:\/\/kienthucmo.com\/wp-content\/uploads\/data-structuires.jpg 1280w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">N\u00f3i m\u1ed9t c\u00e1ch h\u00ecnh t\u01b0\u1ee3ng:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>N\u1ebfu d\u1eef li\u1ec7u l\u00e0 \u0111\u1ed1ng s\u00e1ch v\u1edf, t\u00e0i li\u1ec7u, file\u2026<\/li>\n\n\n\n<li>Th\u00ec <strong>c\u1ea5u tr\u00fac d\u1eef li\u1ec7u<\/strong> ch\u00ednh l\u00e0 c\u00e1ch b\u1ea1n x\u1ebfp ch\u00fang tr\u00ean k\u1ec7, ph\u00e2n lo\u1ea1i theo ch\u1ee7 \u0111\u1ec1, \u0111\u00e1nh s\u1ed1, ho\u1eb7c b\u1ecf v\u00e0o h\u1ed9p \u0111\u1ec3 sau n\u00e0y t\u00ecm l\u1ea1i nhanh nh\u1ea5t.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Trong khoa h\u1ecdc m\u00e1y t\u00ednh, vi\u1ec7c \u201chi\u1ec7u qu\u1ea3\u201d \u1edf \u0111\u00e2y \u0111\u01b0\u1ee3c \u0111o b\u1eb1ng:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Th\u1eddi gian<\/strong>: M\u1ea5t bao l\u00e2u \u0111\u1ec3 t\u00ecm, th\u00eam, x\u00f3a, hay c\u1eadp nh\u1eadt d\u1eef li\u1ec7u? (t\u00ednh theo \u0111\u1ed9 ph\u1ee9c t\u1ea1p Big-O: O(1), O(log n), O(n), \u2026)<\/li>\n\n\n\n<li><strong>B\u1ed9 nh\u1edb<\/strong>: M\u1ea5t bao nhi\u00eau dung l\u01b0\u1ee3ng \u0111\u1ec3 l\u01b0u tr\u1eef? C\u00f3 l\u00e3ng ph\u00ed kh\u00f4ng?<\/li>\n\n\n\n<li><strong>T\u00ednh linh ho\u1ea1t<\/strong>: C\u00f3 d\u1ec5 m\u1edf r\u1ed9ng ho\u1eb7c thay \u0111\u1ed5i khi y\u00eau c\u1ea7u b\u00e0i to\u00e1n thay \u0111\u1ed5i?<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\"><strong>\u0110i\u1ec3m quan tr\u1ecdng<\/strong>: <strong>C\u00f9ng m\u1ed9t d\u1eef li\u1ec7u, nh\u01b0ng c\u00e1ch t\u1ed5 ch\u1ee9c kh\u00e1c nhau c\u00f3 th\u1ec3 khi\u1ebfn ch\u01b0\u01a1ng tr\u00ecnh ch\u1ea1y nhanh l\u00fac b\u1ea1n tan l\u00e0m  ho\u1eb7c ch\u1eadm nh\u01b0 <\/strong>c\u00e1ch b\u1ea1n ch\u1edd crush tr\u1ea3 l\u1eddi tin nh\u1eafn c\u1ee7a b\u1ea1n v\u1eady.<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>V\u00ed d\u1ee5:<\/strong> mu\u1ed1n t\u00ecm s\u1ed1 \u0111i\u1ec7n tho\u1ea1i c\u1ee7a m\u1ed9t ng\u01b0\u1eddi<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>N\u1ebfu b\u1ea1n \u0111\u1ec3 s\u1ed1 \u0111i\u1ec7n tho\u1ea1i trong m\u1ed9t t\u1edd gi\u1ea5y d\u00e0i 10.000 d\u00f2ng v\u00e0 \u0111\u1ecdc t\u1eeb \u0111\u1ea7u \u0111\u1ebfn cu\u1ed1i \u2192 m\u1ea5t O(n) th\u1eddi gian.<\/li>\n\n\n\n<li>N\u1ebfu b\u1ea1n \u0111\u1ec3 n\u00f3 trong danh b\u1ea1 \u0111\u00e3 s\u1eafp x\u1ebfp + d\u00f9ng t\u00ecm ki\u1ebfm nh\u1ecb ph\u00e2n \u2192 ch\u1ec9 m\u1ea5t O(log n).<\/li>\n\n\n\n<li>N\u1ebfu b\u1ea1n \u0111\u1ec3 n\u00f3 trong b\u1ea3ng b\u0103m \u2192 trung b\u00ecnh O(1) l\u00e0 t\u00ecm ra ngay.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">1.2. T\u00ednh ch\u1ea5t chung c\u1ee7a c\u1ea5u tr\u00fac d\u1eef li\u1ec7u<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>1. T\u1ed5 ch\u1ee9c v\u00e0 l\u01b0u tr\u1eef d\u1eef li\u1ec7u<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>M\u1ed7i c\u1ea5u tr\u00fac d\u1eef li\u1ec7u \u0111\u1ec1u x\u00e1c \u0111\u1ecbnh c\u00e1ch d\u1eef li\u1ec7u \u0111\u01b0\u1ee3c s\u1eafp x\u1ebfp trong b\u1ed9 nh\u1edb (li\u00ean ti\u1ebfp ho\u1eb7c r\u1eddi r\u1ea1c).<\/li>\n\n\n\n<li>V\u00ed d\u1ee5:\n<ul class=\"wp-block-list\">\n<li>M\u1ea3ng \u2192 l\u01b0u tr\u1eef li\u00ean ti\u1ebfp.<\/li>\n\n\n\n<li>Danh s\u00e1ch li\u00ean k\u1ebft \u2192 l\u01b0u tr\u1eef r\u1eddi r\u1ea1c, k\u1ebft n\u1ed1i b\u1eb1ng con tr\u1ecf.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>2. Truy c\u1eadp v\u00e0 thao t\u00e1c d\u1eef li\u1ec7u<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>M\u1ed7i lo\u1ea1i c\u1ea5u tr\u00fac d\u1eef li\u1ec7u s\u1ebd h\u1ed7 tr\u1ee3 c\u00e1c ph\u00e9p thao t\u00e1c c\u01a1 b\u1ea3n nh\u01b0:\n<ul class=\"wp-block-list\">\n<li><strong>Th\u00eam (Insert)<\/strong><\/li>\n\n\n\n<li><strong>X\u00f3a (Delete)<\/strong><\/li>\n\n\n\n<li><strong>T\u00ecm ki\u1ebfm (Search)<\/strong><\/li>\n\n\n\n<li><strong>Duy\u1ec7t (Traverse)<\/strong><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>T\u00f9y v\u00e0o c\u1ea5u tr\u00fac m\u00e0 t\u1ed1c \u0111\u1ed9 th\u1ef1c hi\u1ec7n kh\u00e1c nhau (O(1), O(log n), O(n)\u2026).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>3. M\u1ed1i quan h\u1ec7 gi\u1eefa c\u00e1c ph\u1ea7n t\u1eed<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>C\u00e1c ph\u1ea7n t\u1eed c\u00f3 m\u1ed1i li\u00ean k\u1ebft logic (th\u1ee9 t\u1ef1, ph\u00e2n c\u1ea5p, quan h\u1ec7 cha-con\u2026).<\/li>\n\n\n\n<li>V\u00ed d\u1ee5:\n<ul class=\"wp-block-list\">\n<li>Ng\u0103n x\u1ebfp (Stack) \u2192 quan h\u1ec7 LIFO.<\/li>\n\n\n\n<li>H\u00e0ng \u0111\u1ee3i (Queue) \u2192 quan h\u1ec7 FIFO.<\/li>\n\n\n\n<li>C\u00e2y (Tree) \u2192 quan h\u1ec7 ph\u00e2n c\u1ea5p.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>4. T\u00ednh tr\u1eebu t\u01b0\u1ee3ng (Abstract)<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>C\u1ea5u tr\u00fac d\u1eef li\u1ec7u th\u01b0\u1eddng \u0111\u01b0\u1ee3c \u0111\u1ecbnh ngh\u0129a qua c\u00e1c thao t\u00e1c ch\u1ee9 kh\u00f4ng quan t\u00e2m \u0111\u1ebfn c\u00e1ch c\u00e0i \u0111\u1eb7t c\u1ee5 th\u1ec3 (Abstract Data Type \u2013 ADT).<\/li>\n\n\n\n<li>V\u00ed d\u1ee5: \u201cNg\u0103n x\u1ebfp\u201d ch\u1ec9 y\u00eau c\u1ea7u c\u00f3 <code>push<\/code>, <code>pop<\/code>\u2026; c\u00f2n c\u00e0i b\u1eb1ng m\u1ea3ng hay danh s\u00e1ch li\u00ean k\u1ebft th\u00ec t\u00f9y.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>5. Hi\u1ec7u qu\u1ea3 b\u1ed9 nh\u1edb v\u00e0 th\u1eddi gian<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>M\u1ed7i c\u1ea5u tr\u00fac d\u1eef li\u1ec7u c\u00f3 \u01b0u v\u00e0 nh\u01b0\u1ee3c \u0111i\u1ec3m ri\u00eang v\u1ec1:\n<ul class=\"wp-block-list\">\n<li>Dung l\u01b0\u1ee3ng b\u1ed9 nh\u1edb.<\/li>\n\n\n\n<li>Th\u1eddi gian x\u1eed l\u00fd thao t\u00e1c.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Vi\u1ec7c ch\u1ecdn c\u1ea5u tr\u00fac d\u1eef li\u1ec7u \u1ea3nh h\u01b0\u1edfng tr\u1ef1c ti\u1ebfp \u0111\u1ebfn hi\u1ec7u n\u0103ng c\u1ee7a ch\u01b0\u01a1ng tr\u00ecnh.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"697\" src=\"https:\/\/kienthucmo.com\/wp-content\/uploads\/1.2.-Tinh-chat-chung-cua-cau-truc-du-lieu-visual-selection-1024x697.png\" alt=\"T\u00ednh ch\u1ea5t chung c\u1ee7a c\u1ea5u tr\u00fac d\u1eef li\u1ec7u\" class=\"wp-image-700\" srcset=\"https:\/\/kienthucmo.com\/wp-content\/uploads\/1.2.-Tinh-chat-chung-cua-cau-truc-du-lieu-visual-selection-1024x697.png 1024w, https:\/\/kienthucmo.com\/wp-content\/uploads\/1.2.-Tinh-chat-chung-cua-cau-truc-du-lieu-visual-selection-300x204.png 300w, https:\/\/kienthucmo.com\/wp-content\/uploads\/1.2.-Tinh-chat-chung-cua-cau-truc-du-lieu-visual-selection-768x522.png 768w, https:\/\/kienthucmo.com\/wp-content\/uploads\/1.2.-Tinh-chat-chung-cua-cau-truc-du-lieu-visual-selection-250x170.png 250w, https:\/\/kienthucmo.com\/wp-content\/uploads\/1.2.-Tinh-chat-chung-cua-cau-truc-du-lieu-visual-selection.png 1032w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">1.3. Vai tr\u00f2 c\u1ee7a c\u1ea5u tr\u00fac d\u1eef li\u1ec7u<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">C\u1ea5u tr\u00fac d\u1eef li\u1ec7u \u0111\u00f3ng vai tr\u00f2 <strong>n\u1ec1n t\u1ea3ng<\/strong> trong l\u1eadp tr\u00ecnh v\u00e0 khoa h\u1ecdc m\u00e1y t\u00ednh, c\u1ee5 th\u1ec3:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>T\u1ed1i \u01b0u hi\u1ec7u su\u1ea5t ch\u01b0\u01a1ng tr\u00ecnh<\/strong>: Ch\u1ecdn \u0111\u00fang c\u1ea5u tr\u00fac d\u1eef li\u1ec7u c\u00f3 th\u1ec3 gi\u1ea3m th\u1eddi gian ch\u1ea1y t\u1eeb h\u00e0ng gi\u1edd xu\u1ed1ng v\u00e0i gi\u00e2y.<br><strong>Ti\u1ebft ki\u1ec7m b\u1ed9 nh\u1edb:<\/strong> T\u1ed5 ch\u1ee9c h\u1ee3p l\u00fd gi\u00fap h\u1ea1n ch\u1ebf l\u00e3ng ph\u00ed dung l\u01b0\u1ee3ng, \u0111\u1eb7c bi\u1ec7t v\u1edbi d\u1eef li\u1ec7u l\u1edbn.<br><strong>D\u1ec5 b\u1ea3o tr\u00ec v\u00e0 m\u1edf r\u1ed9ng<\/strong>: M\u00e3 ngu\u1ed3n g\u1ecdn g\u00e0ng, r\u00f5 r\u00e0ng h\u01a1n khi d\u1eef li\u1ec7u \u0111\u01b0\u1ee3c qu\u1ea3n l\u00fd khoa h\u1ecdc.<br><strong>Gi\u1ea3i quy\u1ebft b\u00e0i to\u00e1n ph\u1ee9c t\u1ea1p<\/strong>: C\u00e1c thu\u1eadt to\u00e1n n\u00e2ng cao (nh\u01b0 t\u00ecm \u0111\u01b0\u1eddng \u0111i ng\u1eafn nh\u1ea5t, l\u1eadp l\u1ecbch, ph\u00e2n t\u00edch d\u1eef li\u1ec7u) ph\u1ee5 thu\u1ed9c m\u1ea1nh v\u00e0o c\u1ea5u tr\u00fac d\u1eef li\u1ec7u ph\u00f9 h\u1ee3p.<br><strong>N\u1ec1n t\u1ea3ng cho vi\u1ec7c h\u1ecdc gi\u1ea3i thu\u1eadt: <\/strong>Nhi\u1ec1u gi\u1ea3i thu\u1eadt ch\u1ec9 hi\u1ec7u qu\u1ea3 n\u1ebfu \u0111i k\u00e8m c\u1ea5u tr\u00fac d\u1eef li\u1ec7u \u0111\u00fang lo\u1ea1i (v\u00ed d\u1ee5: Dijkstra c\u1ea7n h\u00e0ng \u0111\u1ee3i \u01b0u ti\u00ean)<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">1.4. C\u00e1c lo\u1ea1i c\u1ea5u tr\u00fac d\u1eef li\u1ec7u ph\u1ed5 bi\u1ebfn<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>C\u1ea5u tr\u00fac d\u1eef li\u1ec7u tuy\u1ebfn t\u00ednh (Linear Data Structures)<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Lo\u1ea1i<\/th><th>M\u00f4 t\u1ea3<\/th><\/tr><\/thead><tbody><tr><td><strong>M\u1ea3ng (Array)<\/strong><\/td><td>L\u01b0u tr\u1eef c\u00e1c ph\u1ea7n t\u1eed li\u00ean ti\u1ebfp trong b\u1ed9 nh\u1edb. Truy c\u1eadp nhanh nh\u01b0ng k\u00edch th\u01b0\u1edbc c\u1ed1 \u0111\u1ecbnh.<\/td><\/tr><tr><td><strong>Danh s\u00e1ch li\u00ean k\u1ebft (Linked List)<\/strong><\/td><td>C\u00e1c ph\u1ea7n t\u1eed li\u00ean k\u1ebft v\u1edbi nhau qua con tr\u1ecf. Linh ho\u1ea1t v\u1ec1 k\u00edch th\u01b0\u1edbc.<\/td><\/tr><tr><td><strong>Ng\u0103n x\u1ebfp (Stack)<\/strong><\/td><td>C\u1ea5u tr\u00fac LIFO (Last In First Out).<\/td><\/tr><tr><td><strong>H\u00e0ng \u0111\u1ee3i (Queue)<\/strong><\/td><td>C\u1ea5u tr\u00fac FIFO (First In First Out).<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>C\u1ea5u tr\u00fac d\u1eef li\u1ec7u phi tuy\u1ebfn t\u00ednh (Non-linear Data Structures)<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Lo\u1ea1i<\/th><th>M\u00f4 t\u1ea3<\/th><\/tr><\/thead><tbody><tr><td><strong>C\u00e2y (Tree)<\/strong><\/td><td>M\u1ed7i n\u00fat c\u00f3 th\u1ec3 c\u00f3 nhi\u1ec1u n\u00fat con. D\u00f9ng \u0111\u1ec3 bi\u1ec3u di\u1ec5n ph\u00e2n c\u1ea5p.<\/td><\/tr><tr><td><strong>\u0110\u1ed3 th\u1ecb (Graph)<\/strong><\/td><td>G\u1ed3m c\u00e1c \u0111\u1ec9nh v\u00e0 c\u1ea1nh, bi\u1ec3u di\u1ec5n m\u1ed1i quan h\u1ec7 gi\u1eefa c\u00e1c \u0111\u1ed1i t\u01b0\u1ee3ng.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>C\u1ea5u tr\u00fac d\u1eef li\u1ec7u tr\u1eebu t\u01b0\u1ee3ng (Abstract Data Types &#8211; ADT)<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Lo\u1ea1i<\/th><th>M\u00f4 t\u1ea3<\/th><\/tr><\/thead><tbody><tr><td><strong>Danh s\u00e1ch (List)<\/strong><\/td><td>T\u1eadp h\u1ee3p c\u00e1c ph\u1ea7n t\u1eed c\u00f3 th\u1ee9 t\u1ef1.<\/td><\/tr><tr><td><strong>T\u1eadp h\u1ee3p (Set)<\/strong><\/td><td>T\u1eadp h\u1ee3p kh\u00f4ng c\u00f3 ph\u1ea7n t\u1eed tr\u00f9ng l\u1eb7p.<\/td><\/tr><tr><td><strong>B\u1ea3ng b\u0103m (Hash Table)<\/strong><\/td><td>L\u01b0u tr\u1eef d\u1eef li\u1ec7u theo c\u1eb7p kh\u00f3a\u2013gi\u00e1 tr\u1ecb. Truy c\u1eadp nhanh.<\/td><\/tr><tr><td><strong>\u01afu ti\u00ean h\u00e0ng \u0111\u1ee3i (Priority Queue)<\/strong><\/td><td>H\u00e0ng \u0111\u1ee3i m\u00e0 ph\u1ea7n t\u1eed c\u00f3 \u0111\u1ed9 \u01b0u ti\u00ean cao \u0111\u01b0\u1ee3c x\u1eed l\u00fd tr\u01b0\u1edbc.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>C\u1ea5u tr\u00fac d\u1eef li\u1ec7u \u0111\u1eb7c bi\u1ec7t<\/strong><\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Lo\u1ea1i<\/th><th>M\u00f4 t\u1ea3<\/th><\/tr><\/thead><tbody><tr><td><strong>Heap<\/strong><\/td><td>C\u00e2y nh\u1ecb ph\u00e2n \u0111\u1eb7c bi\u1ec7t d\u00f9ng \u0111\u1ec3 t\u00ecm gi\u00e1 tr\u1ecb l\u1edbn nh\u1ea5t\/nh\u1ecf nh\u1ea5t nhanh.<\/td><\/tr><tr><td><strong>Trie (C\u00e2y ti\u1ec1n t\u1ed1)<\/strong><\/td><td>C\u00e2y d\u00f9ng \u0111\u1ec3 l\u01b0u tr\u1eef chu\u1ed7i, \u0111\u1eb7c bi\u1ec7t l\u00e0 t\u1eeb \u0111i\u1ec3n.<\/td><\/tr><tr><td><strong>Segment Tree \/ Fenwick Tree<\/strong><\/td><td>C\u1ea5u tr\u00fac n\u00e2ng cao d\u00f9ng \u0111\u1ec3 x\u1eed l\u00fd truy v\u1ea5n tr\u00ean m\u1ea3ng.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">2. Gi\u1ea3i thu\u1eadt l\u00e0 g\u00ec?<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">2.1. \u0110\u1ecbnh ngh\u0129a<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Gi\u1ea3i thu\u1eadt l\u00e0 <strong>m\u1ed9t t\u1eadp h\u1ee3p h\u1eefu h\u1ea1n<\/strong> c\u00e1c b\u01b0\u1edbc, quy t\u1eafc ho\u1eb7c ch\u1ec9 d\u1eabn <strong>\u0111\u01b0\u1ee3c s\u1eafp x\u1ebfp theo m\u1ed9t tr\u00ecnh t\u1ef1 logic ch\u1eb7t ch\u1ebd<\/strong>, nh\u1eb1m bi\u1ebfn <strong>d\u1eef li\u1ec7u \u0111\u1ea7u v\u00e0o<\/strong> th\u00e0nh <strong>k\u1ebft qu\u1ea3 \u0111\u1ea7u ra<\/strong> mong mu\u1ed1n.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"750\" height=\"422\" src=\"https:\/\/kienthucmo.com\/wp-content\/uploads\/algorithm.png\" alt=\"\" class=\"wp-image-699\" srcset=\"https:\/\/kienthucmo.com\/wp-content\/uploads\/algorithm.png 750w, https:\/\/kienthucmo.com\/wp-content\/uploads\/algorithm-300x169.png 300w\" sizes=\"(max-width: 750px) 100vw, 750px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\u0110i\u1ec3m quan tr\u1ecdng:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>H\u1eefu h\u1ea1n:<\/strong> gi\u1ea3i thu\u1eadt ph\u1ea3i k\u1ebft th\u00fac sau m\u1ed9t s\u1ed1 b\u01b0\u1edbc nh\u1ea5t \u0111\u1ecbnh.<\/li>\n\n\n\n<li><strong>X\u00e1c \u0111\u1ecbnh:<\/strong> m\u1ed7i b\u01b0\u1edbc ph\u1ea3i \u0111\u01b0\u1ee3c m\u00f4 t\u1ea3 r\u00f5 r\u00e0ng, kh\u00f4ng g\u00e2y m\u01a1 h\u1ed3.<\/li>\n\n\n\n<li><strong>C\u00f3 th\u1ec3 th\u1ef1c thi:<\/strong> m\u1ecdi b\u01b0\u1edbc ph\u1ea3i \u0111\u1ee7 \u0111\u01a1n gi\u1ea3n \u0111\u1ec3 m\u00e1y t\u00ednh ho\u1eb7c con ng\u01b0\u1eddi th\u1ef1c hi\u1ec7n \u0111\u01b0\u1ee3c trong th\u1eddi gian h\u1eefu h\u1ea1n.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Gi\u1ea3i thu\u1eadt kh\u00f4ng ph\u1ee5 thu\u1ed9c v\u00e0o ng\u00f4n ng\u1eef l\u1eadp tr\u00ecnh c\u1ee5 th\u1ec3. N\u00f3 c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c m\u00f4 t\u1ea3 b\u1eb1ng:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Ng\u00f4n ng\u1eef t\u1ef1 nhi\u00ean:<\/strong> m\u00f4 t\u1ea3 b\u1eb1ng l\u1eddi v\u0103n.<\/li>\n\n\n\n<li><strong>L\u01b0u \u0111\u1ed3 (flowchart):<\/strong> d\u00f9ng k\u00fd hi\u1ec7u \u0111\u1ec3 th\u1ec3 hi\u1ec7n lu\u1ed3ng x\u1eed l\u00fd.<\/li>\n\n\n\n<li><strong>Gi\u1ea3 m\u00e3 (pseudocode):<\/strong> m\u00f4 t\u1ea3 c\u00fa ph\u00e1p g\u1ea7n gi\u1ed1ng code nh\u01b0ng d\u1ec5 \u0111\u1ecdc h\u01a1n.<\/li>\n\n\n\n<li><strong>Ng\u00f4n ng\u1eef l\u1eadp tr\u00ecnh:<\/strong> tri\u1ec3n khai tr\u1ef1c ti\u1ebfp th\u00e0nh code ch\u1ea1y \u0111\u01b0\u1ee3c.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-preformatted\">Gi\u1ea3i thu\u1eadt l\u00e0 \u201c<strong>c\u00f4ng th\u1ee9c<\/strong>\u201d gi\u1ea3i b\u00e0i to\u00e1n, c\u00f2n ch\u01b0\u01a1ng tr\u00ecnh m\u00e1y t\u00ednh l\u00e0 \u201c<strong>m\u00f3n \u0103n<\/strong>\u201d \u0111\u01b0\u1ee3c n\u1ea5u d\u1ef1a tr\u00ean c\u00f4ng th\u1ee9c \u0111\u00f3. M\u1ed9t c\u00f4ng th\u1ee9c t\u1ed1t s\u1ebd gi\u00fap b\u1ea1n n\u1ea5u nhanh, t\u1ed1n \u00edt nguy\u00ean li\u1ec7u v\u00e0 d\u1ec5 bi\u1ebfn t\u1ea5u.<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">2.2 \u0110\u1eb7c \u0111i\u1ec3m c\u1ee7a gi\u1ea3i thu\u1eadt<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">M\u1ed9t gi\u1ea3i thu\u1eadt kh\u00f4ng ch\u1ec9 l\u00e0 m\u1ed9t chu\u1ed7i c\u00e1c b\u01b0\u1edbc th\u1ef1c hi\u1ec7n, m\u00e0 c\u00f2n ph\u1ea3i \u0111\u00e1p \u1ee9ng nh\u1eefng ti\u00eau ch\u00ed nh\u1ea5t \u0111\u1ecbnh \u0111\u1ec3 \u0111\u01b0\u1ee3c xem l\u00e0 h\u1ee3p l\u1ec7 v\u00e0 hi\u1ec7u qu\u1ea3. D\u01b0\u1edbi \u0111\u00e2y l\u00e0 b\u1ed1n \u0111\u1eb7c \u0111i\u1ec3m c\u1ed1t l\u00f5i:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">1. T\u00ednh \u0111\u00fang \u0111\u1eafn (Correctness)<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Gi\u1ea3i thu\u1eadt \u0111\u01b0\u1ee3c g\u1ecdi l\u00e0 \u0111\u00fang \u0111\u1eafn n\u1ebfu n\u00f3 <strong>lu\u00f4n cho ra k\u1ebft qu\u1ea3 ch\u00ednh x\u00e1c<\/strong> v\u1edbi m\u1ecdi \u0111\u1ea7u v\u00e0o h\u1ee3p l\u1ec7.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0110i\u1ec1u n\u00e0y c\u00f3 ngh\u0129a l\u00e0: n\u1ebfu b\u00e0i to\u00e1n y\u00eau c\u1ea7u t\u00ecm s\u1ed1 l\u1edbn nh\u1ea5t trong m\u1ed9t danh s\u00e1ch, th\u00ec gi\u1ea3i thu\u1eadt ph\u1ea3i lu\u00f4n tr\u1ea3 v\u1ec1 \u0111\u00fang s\u1ed1 l\u1edbn nh\u1ea5t, b\u1ea5t k\u1ec3 danh s\u00e1ch c\u00f3 bao nhi\u00eau ph\u1ea7n t\u1eed.<\/li>\n\n\n\n<li>T\u00ednh \u0111\u00fang \u0111\u1eafn th\u01b0\u1eddng \u0111\u01b0\u1ee3c ch\u1ee9ng minh b\u1eb1ng <strong>l\u1eadp lu\u1eadn logic<\/strong> ho\u1eb7c <strong>ch\u1ee9ng minh to\u00e1n h\u1ecdc<\/strong>, v\u00ed d\u1ee5 nh\u01b0 quy n\u1ea1p to\u00e1n h\u1ecdc.<\/li>\n\n\n\n<li>M\u1ed9t gi\u1ea3i thu\u1eadt sai c\u00f3 th\u1ec3 ch\u1ea1y nhanh, nh\u01b0ng n\u1ebfu k\u1ebft qu\u1ea3 sai th\u00ec kh\u00f4ng c\u00f3 gi\u00e1 tr\u1ecb th\u1ef1c ti\u1ec5n.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><em>V\u00ed d\u1ee5<\/em>: Gi\u1ea3i thu\u1eadt t\u00ecm ki\u1ebfm nh\u1ecb ph\u00e2n l\u00e0 \u0111\u00fang \u0111\u1eafn v\u00ec n\u00f3 lu\u00f4n t\u00ecm ra v\u1ecb tr\u00ed c\u1ee7a ph\u1ea7n t\u1eed (n\u1ebfu t\u1ed3n t\u1ea1i) trong m\u1ed9t m\u1ea3ng \u0111\u00e3 s\u1eafp x\u1ebfp.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">2. T\u00ednh h\u1eefu h\u1ea1n (Finiteness)<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Gi\u1ea3i thu\u1eadt ph\u1ea3i <strong>k\u1ebft th\u00fac sau m\u1ed9t s\u1ed1 b\u01b0\u1edbc h\u1eefu h\u1ea1n<\/strong>, kh\u00f4ng \u0111\u01b0\u1ee3c ch\u1ea1y v\u00f4 h\u1ea1n.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>N\u1ebfu m\u1ed9t gi\u1ea3i thu\u1eadt kh\u00f4ng bao gi\u1edd k\u1ebft th\u00fac, n\u00f3 kh\u00f4ng th\u1ec3 \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng trong th\u1ef1c t\u1ebf.<\/li>\n\n\n\n<li>T\u00ednh h\u1eefu h\u1ea1n \u0111\u1ea3m b\u1ea3o r\u1eb1ng ng\u01b0\u1eddi d\u00f9ng s\u1ebd nh\u1eadn \u0111\u01b0\u1ee3c k\u1ebft qu\u1ea3 trong m\u1ed9t kho\u1ea3ng th\u1eddi gian h\u1ee3p l\u00fd.<\/li>\n\n\n\n<li>Trong l\u1eadp tr\u00ecnh, vi\u1ec7c qu\u00ean \u0111i\u1ec1u ki\u1ec7n d\u1eebng trong v\u00f2ng l\u1eb7p l\u00e0 m\u1ed9t l\u1ed7i ph\u1ed5 bi\u1ebfn khi\u1ebfn gi\u1ea3i thu\u1eadt m\u1ea5t t\u00ednh h\u1eefu h\u1ea1n.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><em>V\u00ed d\u1ee5<\/em>: Gi\u1ea3i thu\u1eadt t\u00ednh t\u1ed5ng c\u00e1c s\u1ed1 t\u1eeb 1 \u0111\u1ebfn n s\u1ebd k\u1ebft th\u00fac sau n b\u01b0\u1edbc, n\u00ean l\u00e0 h\u1eefu h\u1ea1n.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">3. T\u00ednh r\u00f5 r\u00e0ng (Definiteness)<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">M\u1ed7i b\u01b0\u1edbc trong gi\u1ea3i thu\u1eadt ph\u1ea3i \u0111\u01b0\u1ee3c <strong>m\u00f4 t\u1ea3 r\u00f5 r\u00e0ng, kh\u00f4ng m\u01a1 h\u1ed3<\/strong>, \u0111\u1ec3 b\u1ea5t k\u1ef3 ai (ho\u1eb7c m\u00e1y t\u00ednh) th\u1ef1c hi\u1ec7n c\u0169ng cho ra k\u1ebft qu\u1ea3 gi\u1ed1ng nhau.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Kh\u00f4ng \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng c\u00e1c ch\u1ec9 d\u1eabn m\u01a1 h\u1ed3 nh\u01b0 \u201cl\u00e0m nh\u01b0 b\u1ea1n th\u1ea5y h\u1ee3p l\u00fd\u201d hay \u201cch\u1ecdn ph\u1ea7n t\u1eed ph\u00f9 h\u1ee3p\u201d.<\/li>\n\n\n\n<li>T\u00ednh r\u00f5 r\u00e0ng gi\u00fap gi\u1ea3i thu\u1eadt c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c <strong>hi\u1ec7n th\u1ef1c h\u00f3a b\u1eb1ng m\u00e3 ngu\u1ed3n<\/strong> m\u1ed9t c\u00e1ch ch\u00ednh x\u00e1c.<\/li>\n\n\n\n<li>\u0110\u00e2y l\u00e0 y\u1ebfu t\u1ed1 quan tr\u1ecdng \u0111\u1ec3 \u0111\u1ea3m b\u1ea3o t\u00ednh kh\u1ea3 thi khi tri\u1ec3n khai gi\u1ea3i thu\u1eadt tr\u00ean m\u00e1y t\u00ednh.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><em>V\u00ed d\u1ee5<\/em>: \u201cN\u1ebfu ph\u1ea7n t\u1eed \u1edf gi\u1eefa l\u1edbn h\u01a1n gi\u00e1 tr\u1ecb c\u1ea7n t\u00ecm, th\u00ec t\u00ecm \u1edf n\u1eeda b\u00ean tr\u00e1i\u201d l\u00e0 m\u1ed9t b\u01b0\u1edbc r\u00f5 r\u00e0ng trong t\u00ecm ki\u1ebfm nh\u1ecb ph\u00e2n.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">4. T\u00ednh \u0111\u1ea7u v\u00e0o\/\u0111\u1ea7u ra (Input\/Output)<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Gi\u1ea3i thu\u1eadt c\u1ea7n c\u00f3 <strong>\u0111\u1ea7u v\u00e0o x\u00e1c \u0111\u1ecbnh<\/strong> v\u00e0 <strong>\u0111\u1ea7u ra r\u00f5 r\u00e0ng<\/strong>.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0110\u1ea7u v\u00e0o l\u00e0 d\u1eef li\u1ec7u ban \u0111\u1ea7u m\u00e0 gi\u1ea3i thu\u1eadt x\u1eed l\u00fd.<\/li>\n\n\n\n<li>\u0110\u1ea7u ra l\u00e0 k\u1ebft qu\u1ea3 cu\u1ed1i c\u00f9ng sau khi th\u1ef1c hi\u1ec7n c\u00e1c b\u01b0\u1edbc.<\/li>\n\n\n\n<li>M\u1ed9t gi\u1ea3i thu\u1eadt kh\u00f4ng c\u00f3 \u0111\u1ea7u ra th\u00ec kh\u00f4ng gi\u1ea3i quy\u1ebft \u0111\u01b0\u1ee3c b\u00e0i to\u00e1n; kh\u00f4ng c\u00f3 \u0111\u1ea7u v\u00e0o th\u00ec kh\u00f4ng c\u00f3 g\u00ec \u0111\u1ec3 x\u1eed l\u00fd.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><em>V\u00ed d\u1ee5<\/em>: Gi\u1ea3i thu\u1eadt s\u1eafp x\u1ebfp nh\u1eadn \u0111\u1ea7u v\u00e0o l\u00e0 m\u1ed9t danh s\u00e1ch ch\u01b0a s\u1eafp x\u1ebfp, v\u00e0 \u0111\u1ea7u ra l\u00e0 danh s\u00e1ch \u0111\u00e3 \u0111\u01b0\u1ee3c s\u1eafp x\u1ebfp theo th\u1ee9 t\u1ef1 t\u0103ng d\u1ea7n.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>T\u1ed5ng k\u1ebft<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">B\u1ed1n \u0111\u1eb7c \u0111i\u1ec3m tr\u00ean l\u00e0 n\u1ec1n t\u1ea3ng \u0111\u1ec3 \u0111\u00e1nh gi\u00e1 m\u1ed9t gi\u1ea3i thu\u1eadt c\u00f3 h\u1ee3p l\u1ec7 hay kh\u00f4ng. Trong th\u1ef1c t\u1ebf, m\u1ed9t gi\u1ea3i thu\u1eadt t\u1ed1t kh\u00f4ng ch\u1ec9 \u0111\u00fang \u0111\u1eafn v\u00e0 h\u1eefu h\u1ea1n, m\u00e0 c\u00f2n ph\u1ea3i r\u00f5 r\u00e0ng \u0111\u1ec3 d\u1ec5 tri\u1ec3n khai, v\u00e0 c\u00f3 \u0111\u1ea7u v\u00e0o\/\u0111\u1ea7u ra r\u00f5 r\u00e0ng \u0111\u1ec3 ph\u1ee5c v\u1ee5 m\u1ee5c ti\u00eau c\u1ee5 th\u1ec3. Vi\u1ec7c hi\u1ec3u r\u00f5 c\u00e1c \u0111\u1eb7c \u0111i\u1ec3m n\u00e0y gi\u00fap l\u1eadp tr\u00ecnh vi\u00ean thi\u1ebft k\u1ebf v\u00e0 l\u1ef1a ch\u1ecdn gi\u1ea3i thu\u1eadt ph\u00f9 h\u1ee3p v\u1edbi t\u1eebng b\u00e0i to\u00e1n.<\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"804\" height=\"510\" src=\"https:\/\/kienthucmo.com\/wp-content\/uploads\/Dac-diem-cua-giai-thuat-visual-selection.png\" alt=\"\u1eb7c \u0111i\u1ec3m c\u1ee7a gi\u1ea3i thu\u1eadt\" class=\"wp-image-701\" srcset=\"https:\/\/kienthucmo.com\/wp-content\/uploads\/Dac-diem-cua-giai-thuat-visual-selection.png 804w, https:\/\/kienthucmo.com\/wp-content\/uploads\/Dac-diem-cua-giai-thuat-visual-selection-300x190.png 300w, https:\/\/kienthucmo.com\/wp-content\/uploads\/Dac-diem-cua-giai-thuat-visual-selection-768x487.png 768w\" sizes=\"(max-width: 804px) 100vw, 804px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">2.3 \u0110\u00e1nh gi\u00e1 hi\u1ec7u su\u1ea5t gi\u1ea3i thu\u1eadt<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Hi\u1ec7u su\u1ea5t c\u1ee7a m\u1ed9t gi\u1ea3i thu\u1eadt ph\u1ea3n \u00e1nh m\u1ee9c \u0111\u1ed9 <strong>nhanh<\/strong> v\u00e0 <strong>ti\u1ebft ki\u1ec7m t\u00e0i nguy\u00ean<\/strong> khi gi\u1ea3i quy\u1ebft m\u1ed9t b\u00e0i to\u00e1n. C\u00f3 hai ti\u00eau ch\u00ed ch\u00ednh \u0111\u1ec3 \u0111\u00e1nh gi\u00e1:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">1. \u0110\u1ed9 ph\u1ee9c t\u1ea1p th\u1eddi gian (Time Complexity)<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">\u0110\u00e2y l\u00e0 th\u01b0\u1edbc \u0111o s\u1ed1 l\u01b0\u1ee3ng <strong>b\u01b0\u1edbc th\u1ef1c hi\u1ec7n<\/strong> m\u00e0 gi\u1ea3i thu\u1eadt c\u1ea7n \u0111\u1ec3 ho\u00e0n th\u00e0nh c\u00f4ng vi\u1ec7c, t\u00f9y theo k\u00edch th\u01b0\u1edbc \u0111\u1ea7u v\u00e0o n.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bi\u1ec3u di\u1ec5n b\u1eb1ng k\u00fd hi\u1ec7u Big-O:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Big-O gi\u00fap ta m\u00f4 t\u1ea3 t\u1ed1c \u0111\u1ed9 t\u0103ng tr\u01b0\u1edfng c\u1ee7a th\u1eddi gian ch\u1ea1y khi \u0111\u1ea7u v\u00e0o t\u0103ng.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>K\u00fd hi\u1ec7u<\/th><th>M\u00f4 t\u1ea3<\/th><th>V\u00ed d\u1ee5<\/th><\/tr><\/thead><tbody><tr><td>O(1)<\/td><td>Th\u1eddi gian kh\u00f4ng \u0111\u1ed5i<\/td><td>Truy c\u1eadp ph\u1ea7n t\u1eed trong m\u1ea3ng<\/td><\/tr><tr><td>O(log n)<\/td><td>T\u0103ng ch\u1eadm<\/td><td>T\u00ecm ki\u1ebfm nh\u1ecb ph\u00e2n<\/td><\/tr><tr><td>O(n)<\/td><td>T\u0103ng tuy\u1ebfn t\u00ednh<\/td><td>Duy\u1ec7t qua m\u1ea3ng<\/td><\/tr><tr><td>O(n log n)<\/td><td>T\u0103ng nhanh h\u01a1n tuy\u1ebfn t\u00ednh<\/td><td>Merge Sort, Quick Sort<\/td><\/tr><tr><td>O(n\u00b2)<\/td><td>T\u0103ng theo b\u00ecnh ph\u01b0\u01a1ng<\/td><td>S\u1eafp x\u1ebfp ch\u1ecdn, s\u1eafp x\u1ebfp n\u1ed5i b\u1ecdt<\/td><\/tr><tr><td>O(2\u207f), O(n!)<\/td><td>T\u0103ng c\u1ef1c nhanh<\/td><td>Gi\u1ea3i b\u00e0i to\u00e1n t\u1ed5 h\u1ee3p, \u0111\u1ec7 quy ph\u1ee9c t\u1ea1p<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u00dd ngh\u0129a:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Gi\u1ea3i thu\u1eadt c\u00f3 \u0111\u1ed9 ph\u1ee9c t\u1ea1p th\u1ea5p s\u1ebd x\u1eed l\u00fd nhanh h\u01a1n khi d\u1eef li\u1ec7u l\u1edbn.<\/li>\n\n\n\n<li>Trong th\u1ef1c t\u1ebf, ta \u01b0u ti\u00ean ch\u1ecdn gi\u1ea3i thu\u1eadt c\u00f3 \u0111\u1ed9 ph\u1ee9c t\u1ea1p <strong>t\u1ed1t nh\u1ea5t c\u00f3 th\u1ec3<\/strong>, nh\u01b0ng v\u1eabn \u0111\u1ea3m b\u1ea3o t\u00ednh \u0111\u00fang \u0111\u1eafn.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">2. \u0110\u1ed9 ph\u1ee9c t\u1ea1p kh\u00f4ng gian (Space Complexity)<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">\u0110\u00e2y l\u00e0 th\u01b0\u1edbc \u0111o l\u01b0\u1ee3ng <strong>b\u1ed9 nh\u1edb<\/strong> m\u00e0 gi\u1ea3i thu\u1eadt c\u1ea7n s\u1eed d\u1ee5ng trong qu\u00e1 tr\u00ecnh th\u1ef1c hi\u1ec7n.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>M\u1ed9t s\u1ed1 gi\u1ea3i thu\u1eadt c\u1ea7n th\u00eam m\u1ea3ng ph\u1ee5, b\u1ea3ng l\u01b0u tr\u1eef, ho\u1eb7c ng\u0103n x\u1ebfp \u0111\u1ec3 x\u1eed l\u00fd.<\/li>\n\n\n\n<li>\u0110\u1ed9 ph\u1ee9c t\u1ea1p kh\u00f4ng gian c\u0169ng \u0111\u01b0\u1ee3c bi\u1ec3u di\u1ec5n b\u1eb1ng Big-O, v\u00ed d\u1ee5: O(1), O(n), O(n\u00b2)&#8230;<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>V\u00ed d\u1ee5<\/em>:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Gi\u1ea3i thu\u1eadt t\u00ecm ph\u1ea7n t\u1eed l\u1edbn nh\u1ea5t trong m\u1ea3ng c\u00f3 th\u1ec3 ch\u1ec9 c\u1ea7n O(1) b\u1ed9 nh\u1edb.<\/li>\n\n\n\n<li>Quy ho\u1ea1ch \u0111\u1ed9ng th\u01b0\u1eddng c\u1ea7n O(n) ho\u1eb7c O(n\u00b2) \u0111\u1ec3 l\u01b0u k\u1ebft qu\u1ea3 trung gian.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">3. Trade-off gi\u1eefa th\u1eddi gian v\u00e0 kh\u00f4ng gian<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Trong nhi\u1ec1u tr\u01b0\u1eddng h\u1ee3p, ta ph\u1ea3i <strong>c\u00e2n b\u1eb1ng<\/strong> gi\u1eefa th\u1eddi gian v\u00e0 b\u1ed9 nh\u1edb:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>D\u00f9ng th\u00eam b\u1ed9 nh\u1edb \u0111\u1ec3 t\u0103ng t\u1ed1c \u0111\u1ed9 (v\u00ed d\u1ee5: l\u01b0u k\u1ebft qu\u1ea3 \u0111\u1ec3 tr\u00e1nh t\u00ednh l\u1ea1i).<\/li>\n\n\n\n<li>Gi\u1ea3m d\u00f9ng b\u1ed9 nh\u1edb nh\u01b0ng ch\u1ea5p nh\u1eadn th\u1eddi gian ch\u1ea1y l\u00e2u h\u01a1n.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><em>V\u00ed d\u1ee5<\/em>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Gi\u1ea3i thu\u1eadt quy ho\u1ea1ch \u0111\u1ed9ng gi\u1ea3i b\u00e0i to\u00e1n Fibonacci nhanh h\u01a1n \u0111\u1ec7 quy thu\u1ea7n, nh\u01b0ng t\u1ed1n th\u00eam b\u1ed9 nh\u1edb \u0111\u1ec3 l\u01b0u k\u1ebft qu\u1ea3.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">4. Ph\u00e2n t\u00edch th\u1ef1c nghi\u1ec7m vs l\u00fd thuy\u1ebft<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Ph\u00e2n t\u00edch l\u00fd thuy\u1ebft<\/strong>: D\u1ef1a v\u00e0o Big-O \u0111\u1ec3 \u0111\u00e1nh gi\u00e1 hi\u1ec7u su\u1ea5t trong tr\u01b0\u1eddng h\u1ee3p x\u1ea5u nh\u1ea5t, trung b\u00ecnh, t\u1ed1t nh\u1ea5t.<\/li>\n\n\n\n<li><strong>Ph\u00e2n t\u00edch th\u1ef1c nghi\u1ec7m<\/strong>: Ch\u1ea1y th\u1eed gi\u1ea3i thu\u1eadt v\u1edbi d\u1eef li\u1ec7u th\u1ef1c t\u1ebf \u0111\u1ec3 \u0111o th\u1eddi gian v\u00e0 b\u1ed9 nh\u1edb ti\u00eau th\u1ee5.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>T\u1ed5ng k\u1ebft<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">\u0110\u00e1nh gi\u00e1 hi\u1ec7u su\u1ea5t gi\u00fap ta ch\u1ecdn \u0111\u01b0\u1ee3c gi\u1ea3i thu\u1eadt ph\u00f9 h\u1ee3p v\u1edbi b\u00e0i to\u00e1n v\u00e0 m\u00f4i tr\u01b0\u1eddng th\u1ef1c thi. M\u1ed9t gi\u1ea3i thu\u1eadt \u0111\u00fang \u0111\u1eafn nh\u01b0ng ch\u1eadm ho\u1eb7c t\u1ed1n qu\u00e1 nhi\u1ec1u b\u1ed9 nh\u1edb s\u1ebd kh\u00f4ng hi\u1ec7u qu\u1ea3 trong th\u1ef1c t\u1ebf. V\u00ec v\u1eady, vi\u1ec7c ph\u00e2n t\u00edch \u0111\u1ed9 ph\u1ee9c t\u1ea1p l\u00e0 b\u01b0\u1edbc kh\u00f4ng th\u1ec3 thi\u1ebfu trong thi\u1ebft k\u1ebf v\u00e0 l\u1ef1a ch\u1ecdn gi\u1ea3i thu\u1eadt.<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">2.4 B\u1ea3ng ph\u00e2n lo\u1ea1i c\u00e1c nh\u00f3m gi\u1ea3i thu\u1eadt ph\u1ed5 bi\u1ebfn<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>Lo\u1ea1i thu\u1eadt to\u00e1n<\/strong><\/th><th><strong>M\u00f4 t\u1ea3 ng\u1eaf<\/strong>n<\/th><th><strong>V\u00ed d\u1ee5<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>T\u00ecm ki\u1ebfm (Searching)<\/strong><\/td><td>T\u00ecm ph\u1ea7n t\u1eed trong t\u1eadp d\u1eef li\u1ec7u<\/td><td>T\u00ecm ki\u1ebfm tuy\u1ebfn t\u00ednh, nh\u1ecb ph\u00e2n<\/td><\/tr><tr><td><strong>S\u1eafp x\u1ebfp (Sorting)<\/strong><\/td><td>S\u1eafp x\u1ebfp d\u1eef li\u1ec7u theo th\u1ee9 t\u1ef1<\/td><td>Quick Sort, Merge Sort, Bubble Sort<\/td><\/tr><tr><td><strong>\u0110\u1ec7 quy (Recursion)<\/strong><\/td><td>G\u1ecdi l\u1ea1i ch\u00ednh n\u00f3 \u0111\u1ec3 gi\u1ea3i b\u00e0i to\u00e1n con<\/td><td>T\u00ednh giai th\u1eeba, duy\u1ec7t c\u00e2y<\/td><\/tr><tr><td><strong>Tham lam (Greedy)<\/strong><\/td><td>Ch\u1ecdn ph\u01b0\u01a1ng \u00e1n t\u1ed1i \u01b0u t\u1ea1i m\u1ed7i b\u01b0\u1edbc<\/td><td>Dijkstra, Kruskal<\/td><\/tr><tr><td><strong>Quy ho\u1ea1ch \u0111\u1ed9ng (Dynamic Programming)<\/strong><\/td><td>L\u01b0u k\u1ebft qu\u1ea3 trung gian \u0111\u1ec3 t\u1ed1i \u01b0u th\u1eddi gian<\/td><td>Knapsack, Fibonacci<\/td><\/tr><tr><td><strong>Backtracking<\/strong><\/td><td>Th\u1eed t\u1eebng kh\u1ea3 n\u0103ng, quay lui khi sai<\/td><td>Sudoku, N-Queens<\/td><\/tr><tr><td><strong>Chia \u0111\u1ec3 tr\u1ecb (Divide and Conquer)<\/strong><\/td><td>Chia b\u00e0i to\u00e1n l\u1edbn th\u00e0nh b\u00e0i to\u00e1n nh\u1ecf, gi\u1ea3i t\u1eebng ph\u1ea7n r\u1ed3i k\u1ebft h\u1ee3p<\/td><td>Merge Sort, Quick Sort, Binary Search<\/td><\/tr><tr><td><strong>Thu\u1eadt to\u00e1n \u0111\u1ed3 th\u1ecb (Graph Algorithms)<\/strong><\/td><td>Gi\u1ea3i b\u00e0i to\u00e1n tr\u00ean c\u1ea5u tr\u00fac \u0111\u1ed3 th\u1ecb<\/td><td>BFS, DFS, Dijkstra, Prim<\/td><\/tr><tr><td><strong>Thu\u1eadt to\u00e1n heuristic \/ metaheuristic<\/strong><\/td><td>G\u1ea7n \u0111\u00fang, d\u00f9ng trong b\u00e0i to\u00e1n t\u1ed1i \u01b0u ph\u1ee9c t\u1ea1p<\/td><td>Genetic Algorithm, Simulated Annealing<\/td><\/tr><tr><td><strong>Thu\u1eadt to\u00e1n m\u00e3 h\u00f3a \/ b\u1ea3o m\u1eadt<\/strong><\/td><td>D\u00f9ng trong l\u0129nh v\u1ef1c an to\u00e0n th\u00f4ng tin<\/td><td>RSA, AES, SHA<\/td><\/tr><tr><td><strong>Thu\u1eadt to\u00e1n h\u1ecdc m\u00e1y (Machine Learning)<\/strong><\/td><td>H\u1ecdc t\u1eeb d\u1eef li\u1ec7u \u0111\u1ec3 d\u1ef1 \u0111o\u00e1n ho\u1eb7c ph\u00e2n lo\u1ea1i<\/td><td>Linear Regression, Decision Tree<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">3. M\u1ed1i quan h\u1ec7 gi\u1eefa c\u1ea5u tr\u00fac d\u1eef li\u1ec7u v\u00e0 gi\u1ea3i thu\u1eadt<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">M\u1ed1i quan h\u1ec7 gi\u1eefa <strong>c\u1ea5u tr\u00fac d\u1eef li\u1ec7u<\/strong> v\u00e0 <strong>gi\u1ea3i thu\u1eadt<\/strong> l\u00e0 m\u1ed9t trong nh\u1eefng n\u1ec1n t\u1ea3ng c\u1ed1t l\u00f5i c\u1ee7a khoa h\u1ecdc m\u00e1y t\u00ednh. Ch\u00fang kh\u00f4ng t\u1ed3n t\u1ea1i \u0111\u1ed9c l\u1eadp m\u00e0 lu\u00f4n g\u1eafn b\u00f3 ch\u1eb7t ch\u1ebd v\u1edbi nhau. \u0110\u1ec3 l\u00e0m r\u00f5 v\u1ea5n \u0111\u1ec1 n\u00e0y, ta c\u00f3 th\u1ec3 ph\u00e2n t\u00edch theo c\u00e1c kh\u00eda c\u1ea1nh sau:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>3.1 Kh\u00e1i ni\u1ec7m k\u1ebft n\u1ed1i<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>C\u1ea5u tr\u00fac d\u1eef li\u1ec7u (DS)<\/strong>: C\u00e1ch b\u1ea1n <strong>t\u1ed5 ch\u1ee9c, s\u1eafp x\u1ebfp v\u00e0 l\u01b0u tr\u1eef<\/strong> d\u1eef li\u1ec7u trong b\u1ed9 nh\u1edb (RAM, \u0111\u0129a c\u1ee9ng) \u0111\u1ec3 c\u00f3 th\u1ec3 <strong>truy c\u1eadp v\u00e0 thay \u0111\u1ed5i hi\u1ec7u qu\u1ea3<\/strong>.<\/li>\n\n\n\n<li><strong>Gi\u1ea3i thu\u1eadt (Algorithm)<\/strong>: T\u1eadp h\u1ee3p c\u00e1c <strong>b\u01b0\u1edbc x\u1eed l\u00fd c\u00f3 th\u1ee9 t\u1ef1<\/strong> \u0111\u1ec3 <strong>gi\u1ea3i quy\u1ebft b\u00e0i to\u00e1n<\/strong> tr\u00ean d\u1eef li\u1ec7u \u0111\u00f3.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udccc <strong>\u0110i\u1ec3m m\u1ea5u ch\u1ed1t<\/strong>: Gi\u1ea3i thu\u1eadt ch\u1ec9 l\u00e0 \u201cb\u1ed9 c\u00f4ng th\u1ee9c\u201d x\u1eed l\u00fd, c\u00f2n c\u1ea5u tr\u00fac d\u1eef li\u1ec7u ch\u00ednh l\u00e0 \u201cnguy\u00ean li\u1ec7u\u201d v\u00e0 \u201cc\u00e1ch b\u1ea3o qu\u1ea3n nguy\u00ean li\u1ec7u\u201d. Nguy\u00ean li\u1ec7u \u0111\u01b0\u1ee3c t\u1ed5 ch\u1ee9c t\u1ed1t th\u00ec c\u00f4ng th\u1ee9c s\u1ebd d\u1ec5 l\u00e0m v\u00e0 nhanh h\u01a1n.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>3.2 T\u00ednh ph\u1ee5 thu\u1ed9c l\u1eabn nhau<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Gi\u1ea3i thu\u1eadt c\u1ea7n DS<\/strong>: B\u1ea1n kh\u00f4ng th\u1ec3 ch\u1ea1y m\u1ed9t gi\u1ea3i thu\u1eadt hi\u1ec7u qu\u1ea3 n\u1ebfu d\u1eef li\u1ec7u kh\u00f4ng \u0111\u01b0\u1ee3c t\u1ed5 ch\u1ee9c h\u1ee3p l\u00fd.<\/li>\n\n\n\n<li><strong>DS c\u1ea7n gi\u1ea3i thu\u1eadt<\/strong>: M\u1ed9t DS ch\u1ec9 h\u1eefu \u00edch n\u1ebfu c\u00f3 c\u00e1c gi\u1ea3i thu\u1eadt \u0111\u1ec3 th\u00eam, x\u00f3a, t\u00ecm ki\u1ebfm, duy\u1ec7t n\u00f3 nhanh ch\u00f3ng.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\u27f9 DS v\u00e0 Algorithm <strong>lu\u00f4n song h\u00e0nh<\/strong>: thay \u0111\u1ed5i m\u1ed9t b\u00ean s\u1ebd t\u00e1c \u0111\u1ed9ng \u0111\u1ebfn b\u00ean c\u00f2n l\u1ea1i.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>3.3 T\u00e1c \u0111\u1ed9ng \u0111\u1ebfn hi\u1ec7u su\u1ea5t<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">C\u1ea5u tr\u00fac d\u1eef li\u1ec7u <strong>\u1ea3nh h\u01b0\u1edfng tr\u1ef1c ti\u1ebfp<\/strong> \u0111\u1ebfn:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Th\u1eddi gian ch\u1ea1y<\/strong> c\u1ee7a gi\u1ea3i thu\u1eadt (Time Complexity).<\/li>\n\n\n\n<li><strong>B\u1ed9 nh\u1edb ti\u00eau th\u1ee5<\/strong> (Space Complexity).<\/li>\n\n\n\n<li><strong>T\u00ednh \u0111\u01a1n gi\u1ea3n\/ph\u1ee9c t\u1ea1p<\/strong> khi c\u00e0i \u0111\u1eb7t.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>V\u00ed d\u1ee5:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>B\u00e0i to\u00e1n<\/th><th>C\u1ea5u tr\u00fac d\u1eef li\u1ec7u ch\u1ecdn<\/th><th>Gi\u1ea3i thu\u1eadt<\/th><th>\u0110\u1ed9 ph\u1ee9c t\u1ea1p<\/th><\/tr><\/thead><tbody><tr><td>T\u00ecm ki\u1ebfm trong t\u1eadp l\u1edbn \u0111\u00e3 s\u1eafp x\u1ebfp<\/td><td>M\u1ea3ng t\u0129nh (Array)<\/td><td>Binary Search<\/td><td>O(log n)<\/td><\/tr><tr><td>T\u00ecm ki\u1ebfm v\u1edbi kh\u00f3a duy nh\u1ea5t<\/td><td>Hash Table<\/td><td>Tra c\u1ee9u theo b\u0103m<\/td><td>O(1) trung b\u00ecnh<\/td><\/tr><tr><td>Qu\u1ea3n l\u00fd h\u00e0ng \u0111\u1ee3i \u01b0u ti\u00ean<\/td><td>Heap<\/td><td>Heap Push\/Pop<\/td><td>O(log n)<\/td><\/tr><tr><td>T\u00ecm \u0111\u01b0\u1eddng ng\u1eafn nh\u1ea5t<\/td><td>\u0110\u1ed3 th\u1ecb (Adjacency List)<\/td><td>Dijkstra<\/td><td>O((V+E) log V)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>3.4 T\u00e1c \u0111\u1ed9ng qua l\u1ea1i<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Data Structure \u2192 Algorithm<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>N\u1ebfu d\u1eef li\u1ec7u l\u01b0u d\u01b0\u1edbi d\u1ea1ng <strong>m\u1ea3ng \u0111\u00e3 s\u1eafp x\u1ebfp<\/strong>, b\u1ea1n c\u00f3 th\u1ec3 d\u00f9ng <strong>Binary Search<\/strong>.<\/li>\n\n\n\n<li>N\u1ebfu l\u01b0u d\u01b0\u1edbi d\u1ea1ng <strong>linked list<\/strong>, Binary Search <strong>kh\u00f4ng kh\u1ea3 thi<\/strong> v\u00ec kh\u00f4ng th\u1ec3 truy c\u1eadp ph\u1ea7n t\u1eed gi\u1eefa O(1).<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Algorithm \u2192 Data Structure<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>N\u1ebfu c\u1ea7n thu\u1eadt to\u00e1n <strong>Dijkstra<\/strong>, b\u1ea1n s\u1ebd ch\u1ecdn <strong>Priority Queue<\/strong> (Heap) \u0111\u1ec3 gi\u1ea3m th\u1eddi gian l\u1ea5y \u0111\u1ec9nh nh\u1ecf nh\u1ea5t.<\/li>\n\n\n\n<li>N\u1ebfu d\u00f9ng <strong>m\u1ea3ng th\u01b0\u1eddng<\/strong> \u0111\u1ec3 t\u00ecm ph\u1ea7n t\u1eed nh\u1ecf nh\u1ea5t m\u1ed7i l\u1ea7n, th\u1eddi gian s\u1ebd t\u0103ng t\u1eeb <strong>O(log n)<\/strong> th\u00e0nh <strong>O(n)<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>K\u1ebft lu\u1eadn:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">- Gi\u1ea3i thu\u1eadt kh\u00f4ng th\u1ec3 t\u00e1ch r\u1eddi c\u1ea5u tr\u00fac d\u1eef li\u1ec7u v\u00ec d\u1eef li\u1ec7u l\u01b0u tr\u1eef th\u1ebf n\u00e0o s\u1ebd quy\u1ebft \u0111\u1ecbnh c\u00e1ch v\u00e0 t\u1ed1c \u0111\u1ed9 x\u1eed l\u00fd.<br><br>- Khi thi\u1ebft k\u1ebf ch\u01b0\u01a1ng tr\u00ecnh, l\u1eadp tr\u00ecnh vi\u00ean gi\u1ecfi s\u1ebd ch\u1ecdn c\u1ea5u tr\u00fac d\u1eef li\u1ec7u tr\u01b0\u1edbc, sau \u0111\u00f3 ch\u1ecdn ho\u1eb7c thi\u1ebft k\u1ebf gi\u1ea3i thu\u1eadt ph\u00f9 h\u1ee3p \u0111\u1ec3 t\u1ed1i \u01b0u c\u1ea3 th\u1eddi gian v\u00e0 b\u1ed9 nh\u1edb.<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">4. L\u1ee3i \u00edch khi h\u1ecdc C\u1ea5u tr\u00fac d\u1eef li\u1ec7u v\u00e0 Gi\u1ea3i thu\u1eadt<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">4.1. Gi\u1ea3i quy\u1ebft v\u1ea5n \u0111\u1ec1 nhanh h\u01a1n<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Khi g\u1eb7p m\u1ed9t b\u00e0i to\u00e1n, b\u1ea1n s\u1ebd bi\u1ebft <strong>ph\u1ea3i l\u01b0u d\u1eef li\u1ec7u th\u1ebf n\u00e0o<\/strong> v\u00e0 <strong>x\u1eed l\u00fd ra sao<\/strong> \u0111\u1ec3 ra k\u1ebft qu\u1ea3 nhanh nh\u1ea5t.<\/li>\n\n\n\n<li>V\u00ed d\u1ee5:\n<ul class=\"wp-block-list\">\n<li><strong>T\u00ecm ki\u1ebfm t\u00ean ng\u01b0\u1eddi d\u00f9ng<\/strong>: N\u1ebfu l\u01b0u trong <strong>Hash Table<\/strong>, tra c\u1ee9u O(1) thay v\u00ec O(n).<\/li>\n\n\n\n<li><strong>L\u1eadp l\u1ecbch x\u1eed l\u00fd c\u00f4ng vi\u1ec7c<\/strong>: D\u00f9ng <strong>Priority Queue<\/strong> (Heap) \u0111\u1ec3 lu\u00f4n l\u1ea5y vi\u1ec7c \u01b0u ti\u00ean cao nh\u1ea5t nhanh ch\u00f3ng.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\ud83d\udc49 H\u1ecdc <strong>Data Structure<\/strong> gi\u00fap b\u1ea1n <strong>tr\u00e1nh \u201ccode ki\u1ec3u brute force\u201d<\/strong> (duy\u1ec7t h\u1ebft m\u1ecdi kh\u1ea3 n\u0103ng) v\u00e0 thay v\u00e0o \u0111\u00f3 t\u00ecm <strong>c\u00e1ch th\u00f4ng minh h\u01a1n<\/strong>.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">4.2. Vi\u1ebft code t\u1ed1i \u01b0u, ti\u1ebft ki\u1ec7m t\u00e0i nguy\u00ean<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>T\u1ed1i \u01b0u <strong>th\u1eddi gian<\/strong>: Code ch\u1ea1y nhanh h\u01a1n, gi\u1ea3m \u0111\u1ed9 tr\u1ec5.<\/li>\n\n\n\n<li>T\u1ed1i \u01b0u <strong>b\u1ed9 nh\u1edb<\/strong>: Tr\u00e1nh l\u00e3ng ph\u00ed RAM ho\u1eb7c l\u01b0u tr\u1eef.<\/li>\n\n\n\n<li>V\u00ed d\u1ee5:\n<ul class=\"wp-block-list\">\n<li>X\u1eed l\u00fd log file h\u00e0ng GB: d\u00f9ng <strong>Streaming Algorithm<\/strong> \u0111\u1ec3 kh\u00f4ng c\u1ea7n load to\u00e0n b\u1ed9 v\u00e0o RAM.<\/li>\n\n\n\n<li>X\u00e2y d\u1ef1ng h\u1ec7 th\u1ed1ng chat: d\u00f9ng <strong>Circular Buffer<\/strong> thay v\u00ec m\u1ea3ng th\u01b0\u1eddng \u0111\u1ec3 tr\u00e1nh d\u1ecbch chuy\u1ec3n d\u1eef li\u1ec7u li\u00ean t\u1ee5c.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\ud83d\udc49 \u0110i\u1ec1u n\u00e0y r\u1ea5t quan tr\u1ecdng trong <strong>\u1ee9ng d\u1ee5ng di \u0111\u1ed9ng<\/strong>, <strong>game<\/strong> ho\u1eb7c <strong>h\u1ec7 th\u1ed1ng nh\u00fang<\/strong> n\u01a1i t\u00e0i nguy\u00ean h\u1ea1n ch\u1ebf.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">4.3. V\u01b0\u1ee3t qua ph\u1ecfng v\u1ea5n l\u1eadp tr\u00ecnh d\u1ec5 d\u00e0ng h\u01a1n<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>C\u00e1c c\u00f4ng ty c\u00f4ng ngh\u1ec7 l\u1edbn nh\u01b0 <strong>Google, Meta, Amazon, Microsoft<\/strong> r\u1ea5t ch\u00fa tr\u1ecdng k\u1ef9 n\u0103ng <strong>Data Structure<\/strong>.<\/li>\n\n\n\n<li>L\u00fd do:\n<ol class=\"wp-block-list\">\n<li>DSA l\u00e0 th\u01b0\u1edbc \u0111o kh\u1ea3 n\u0103ng t\u01b0 duy logic v\u00e0 gi\u1ea3i quy\u1ebft v\u1ea5n \u0111\u1ec1.<\/li>\n\n\n\n<li>N\u00f3 \u0111\u1ed9c l\u1eadp v\u1edbi ng\u00f4n ng\u1eef l\u1eadp tr\u00ecnh, n\u00ean \u0111\u00e1nh gi\u00e1 c\u00f4ng b\u1eb1ng.<\/li>\n<\/ol>\n<\/li>\n\n\n\n<li>Trong ph\u1ecfng v\u1ea5n, b\u1ea1n s\u1ebd g\u1eb7p d\u1ea1ng:\n<ul class=\"wp-block-list\">\n<li><strong>T\u00ecm \u0111\u01b0\u1eddng \u0111i ng\u1eafn nh\u1ea5t<\/strong> (Graph + BFS\/DFS\/Dijkstra).<\/li>\n\n\n\n<li><strong>T\u00ecm c\u1eb7p s\u1ed1 c\u00f3 t\u1ed5ng b\u1eb1ng X<\/strong> (Hash Map).<\/li>\n\n\n\n<li><strong>S\u1eafp x\u1ebfp d\u1eef li\u1ec7u<\/strong> (Merge Sort, Quick Sort).<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\ud83d\udc49 N\u1eafm v\u1eefng <strong>Data Structure<\/strong> gi\u00fap b\u1ea1n kh\u00f4ng b\u1ecb \u201c\u0111\u1ee9ng h\u00ecnh\u201d khi g\u1eb7p b\u00e0i l\u1ea1.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">4.4. Hi\u1ec3u s\u00e2u c\u00e1ch m\u00e1y t\u00ednh ho\u1ea1t \u0111\u1ed9ng<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Khi h\u1ecdc <strong>Data Structure<\/strong>, b\u1ea1n s\u1ebd:\n<ul class=\"wp-block-list\">\n<li>Hi\u1ec3u c\u00e1ch d\u1eef li\u1ec7u l\u01b0u trong <strong>RAM<\/strong>, <strong>Cache<\/strong>, <strong>\u1ed4 \u0111\u0129a<\/strong>.<\/li>\n\n\n\n<li>N\u1eafm r\u00f5 c\u01a1 ch\u1ebf <strong>con tr\u1ecf<\/strong>, <strong>truy c\u1eadp b\u1ed9 nh\u1edb<\/strong>, <strong>\u0111\u1ed9 ph\u1ee9c t\u1ea1p<\/strong>.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>V\u00ed d\u1ee5:\n<ul class=\"wp-block-list\">\n<li>T\u1ea1i sao <strong>m\u1ea3ng li\u00ean ti\u1ebfp<\/strong> l\u1ea1i duy\u1ec7t nhanh h\u01a1n linked list? \u2192 v\u00ec cache CPU ho\u1ea1t \u0111\u1ed9ng t\u1ed1t h\u01a1n khi d\u1eef li\u1ec7u n\u1eb1m g\u1ea7n nhau.<\/li>\n\n\n\n<li>T\u1ea1i sao t\u00ecm ki\u1ebfm nh\u1ecb ph\u00e2n c\u1ea7n d\u1eef li\u1ec7u <strong>\u0111\u00e3 s\u1eafp x\u1ebfp<\/strong>? \u2192 v\u00ec n\u00f3 d\u1ef1a v\u00e0o vi\u1ec7c lo\u1ea1i b\u1ecf n\u1eeda d\u1eef li\u1ec7u m\u1ed7i b\u01b0\u1edbc.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>\ud83d\udc49 \u0110i\u1ec1u n\u00e0y gi\u00fap b\u1ea1n vi\u1ebft code kh\u00f4ng ch\u1ec9 \u0111\u00fang m\u00e0 c\u00f2n \u201cth\u00e2n thi\u1ec7n\u201d v\u1edbi ph\u1ea7n c\u1ee9ng.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>K\u1ebft lu\u1eadn<\/strong>: H\u1ecdc <strong>Data Structure<\/strong> kh\u00f4ng ch\u1ec9 l\u00e0 \u0111\u1ec3 \u201cqua m\u00f4n\u201d hay \u201cqua v\u00f2ng ph\u1ecfng v\u1ea5n\u201d, m\u00e0 n\u00f3 l\u00e0 k\u1ef9 n\u0103ng c\u1ed1t l\u00f5i gi\u00fap b\u1ea1n:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Gi\u1ea3i b\u00e0i to\u00e1n nhanh h\u01a1n.<\/li>\n\n\n\n<li>Code g\u1ecdn v\u00e0 hi\u1ec7u qu\u1ea3 h\u01a1n.<\/li>\n\n\n\n<li>T\u1ef1 tin khi l\u00e0m d\u1ef1 \u00e1n th\u1ef1c t\u1ebf.<\/li>\n\n\n\n<li>Hi\u1ec3u r\u00f5 \u201cb\u00ean trong\u201d m\u00e1y t\u00ednh \u0111ang l\u00e0m g\u00ec.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"864\" height=\"660\" src=\"https:\/\/kienthucmo.com\/wp-content\/uploads\/4.1.-Giai-quyet-van-de-nhanh-hon-visual-selection.png\" alt=\"L\u1ee3i \u00edch khi h\u1ecdc C\u1ea5u tr\u00fac d\u1eef li\u1ec7u v\u00e0 Gi\u1ea3i thu\u1eadt\" class=\"wp-image-702\" srcset=\"https:\/\/kienthucmo.com\/wp-content\/uploads\/4.1.-Giai-quyet-van-de-nhanh-hon-visual-selection.png 864w, https:\/\/kienthucmo.com\/wp-content\/uploads\/4.1.-Giai-quyet-van-de-nhanh-hon-visual-selection-300x229.png 300w, https:\/\/kienthucmo.com\/wp-content\/uploads\/4.1.-Giai-quyet-van-de-nhanh-hon-visual-selection-768x587.png 768w\" sizes=\"(max-width: 864px) 100vw, 864px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">5. K\u1ebft lu\u1eadn<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">C\u1ea5u tr\u00fac d\u1eef li\u1ec7u v\u00e0 gi\u1ea3i thu\u1eadt ch\u00ednh l\u00e0 n\u1ec1n m\u00f3ng c\u1ee7a l\u1eadp tr\u00ecnh, gi\u1ed1ng nh\u01b0 \u201cx\u01b0\u01a1ng s\u1ed1ng\u201d v\u00e0 \u201cb\u1ed9 n\u00e3o\u201d c\u1ee7a m\u1ecdi ph\u1ea7n m\u1ec1m. M\u1ed9t l\u1eadp tr\u00ecnh vi\u00ean gi\u1ecfi kh\u00f4ng ch\u1ec9 bi\u1ebft vi\u1ebft code ch\u1ea1y \u0111\u00fang, m\u00e0 c\u00f2n bi\u1ebft ch\u1ecdn c\u1ea5u tr\u00fac d\u1eef li\u1ec7u ph\u00f9 h\u1ee3p v\u00e0 \u00e1p d\u1ee5ng gi\u1ea3i thu\u1eadt t\u1ed1i \u01b0u \u0111\u1ec3 ti\u1ebft ki\u1ec7m th\u1eddi gian x\u1eed l\u00fd v\u00e0 t\u00e0i nguy\u00ean h\u1ec7 th\u1ed1ng.<br>Vi\u1ec7c th\u00e0nh th\u1ea1o DSA kh\u00f4ng ch\u1ec9 gi\u00fap b\u1ea1n gi\u1ea3i quy\u1ebft v\u1ea5n \u0111\u1ec1 nhanh h\u01a1n, vi\u1ebft code g\u1ecdn g\u00e0ng v\u00e0 hi\u1ec7u qu\u1ea3 h\u01a1n, m\u00e0 c\u00f2n m\u1edf ra c\u01a1 h\u1ed9i v\u01b0\u1ee3t qua c\u00e1c k\u1ef3 ph\u1ecfng v\u1ea5n l\u1eadp tr\u00ecnh kh\u00f3 kh\u0103n t\u1ea1i nh\u1eefng c\u00f4ng ty c\u00f4ng ngh\u1ec7 h\u00e0ng \u0111\u1ea7u.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">H\u00e3y nh\u1edb: C\u1ea5u tr\u00fac d\u1eef li\u1ec7u v\u00e0 gi\u1ea3i thu\u1eadt l\u00e0 c\u00f4ng c\u1ee5 \u2014 c\u00f2n t\u01b0 duy gi\u1ea3i quy\u1ebft v\u1ea5n \u0111\u1ec1 m\u1edbi l\u00e0 v\u0169 kh\u00ed th\u1eadt s\u1ef1.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>G\u1ee3i \u00fd<\/strong>: M\u1ed9t s\u1ed1 trang h\u1ecdc C\u1ea5u tr\u00fac d\u1eef li\u1ec7u &amp; Gi\u1ea3i thu\u1eadt<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.geeksforgeeks.org\/\" data-type=\"link\" data-id=\"https:\/\/www.geeksforgeeks.org\/\" target=\"_blank\" rel=\"noopener\">GeeksforGeeks<\/a> \u2013 Kho t\u00e0i li\u1ec7u v\u00e0 b\u00e0i t\u1eadp DSA kh\u1ed5ng l\u1ed3, t\u1eeb c\u01a1 b\u1ea3n \u0111\u1ebfn n\u00e2ng cao.<\/li>\n\n\n\n<li><a href=\"https:\/\/leetcode.com\/\" data-type=\"link\" data-id=\"https:\/\/leetcode.com\/\" target=\"_blank\" rel=\"noopener\">LeetCode<\/a> \u2013 Luy\u1ec7n t\u1eadp gi\u1ea3i thu\u1eadt, c\u1ef1c h\u1eefu \u00edch cho ph\u1ecfng v\u1ea5n.<\/li>\n\n\n\n<li><a href=\"https:\/\/www.hackerrank.com\/\" data-type=\"link\" data-id=\"https:\/\/www.hackerrank.com\/\" target=\"_blank\" rel=\"noopener\">HackerRank <\/a>\u2013 C\u00f3 ph\u1ea7n DSA k\u00e8m gi\u1ea3i th\u00edch l\u00fd thuy\u1ebft.<\/li>\n\n\n\n<li><a href=\"https:\/\/codeforces.com\/\" data-type=\"link\" data-id=\"https:\/\/codeforces.com\/\" target=\"_blank\" rel=\"noopener\">Codeforces<\/a> \u2013 Trang thi l\u1eadp tr\u00ecnh c\u1ea1nh tranh, gi\u00fap n\u00e2ng k\u1ef9 n\u0103ng.<\/li>\n\n\n\n<li><a href=\"https:\/\/visualgo.net\/en\" data-type=\"link\" data-id=\"https:\/\/visualgo.net\/en\" target=\"_blank\" rel=\"noopener\">Visualgo<\/a> \u2013 M\u00f4 ph\u1ecfng tr\u1ef1c quan c\u00e1ch ho\u1ea1t \u0111\u1ed9ng c\u1ee7a c\u00e1c c\u1ea5u tr\u00fac d\u1eef li\u1ec7u v\u00e0 thu\u1eadt to\u00e1n.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">6. T\u00e0i li\u1ec7u tham kh\u1ea3o<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">[1] T. H. Cormen, C. E. Leiserson, R. L. Rivest, and C. Stein, <em>Introduction to Algorithms<\/em>, 3rd ed. Cambridge, MA, USA: MIT Press, 2009.<br>[2] R. Sedgewick and K. Wayne, <em>Algorithms<\/em>, 4th ed. Boston, MA, USA: Addison-Wesley, 2011.<br>[3] S. S. Skiena, <em>The Algorithm Design Manual<\/em>, 2nd ed. London, UK: Springer, 2008.<br>[4] A. Bhargava, <em>Grokking Algorithms: An Illustrated Guide for Programmers and Other Curious People<\/em>. Shelter Island, NY, USA: Manning Publications, 2016.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>C\u1ea5u tr\u00fac d\u1eef li\u1ec7u v\u00e0 gi\u1ea3i thu\u1eadt ch\u00ednh l\u00e0 n\u1ec1n m\u00f3ng c\u1ee7a l\u1eadp tr\u00ecnh, gi\u1ed1ng nh\u01b0 \u201cx\u01b0\u01a1ng s\u1ed1ng\u201d v\u00e0 \u201cb\u1ed9 n\u00e3o\u201d c\u1ee7a m\u1ecdi ph\u1ea7n m\u1ec1m. M\u1ed9t l\u1eadp tr\u00ecnh vi\u00ean gi\u1ecfi kh\u00f4ng ch\u1ec9 bi\u1ebft vi\u1ebft code ch\u1ea1y \u0111\u00fang, m\u00e0 c\u00f2n bi\u1ebft ch\u1ecdn c\u1ea5u tr\u00fac d\u1eef li\u1ec7u ph\u00f9 h\u1ee3p v\u00e0 \u00e1p d\u1ee5ng gi\u1ea3i thu\u1eadt t\u1ed1i \u01b0u \u0111\u1ec3 ti\u1ebft ki\u1ec7m th\u1eddi gian x\u1eed l\u00fd v\u00e0 t\u00e0i nguy\u00ean h\u1ec7 th\u1ed1ng.<\/p>\n","protected":false},"author":1,"featured_media":3020,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"googlesitekit_rrm_CAowieHDDA:productID":"","footnotes":""},"categories":[16],"tags":[36],"class_list":["post-694","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cong-nghe-thong-tin","tag-cau-truc-du-lieu-va-giai-thuat"],"_links":{"self":[{"href":"https:\/\/kienthucmo.com\/vi\/wp-json\/wp\/v2\/posts\/694","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kienthucmo.com\/vi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kienthucmo.com\/vi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kienthucmo.com\/vi\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kienthucmo.com\/vi\/wp-json\/wp\/v2\/comments?post=694"}],"version-history":[{"count":10,"href":"https:\/\/kienthucmo.com\/vi\/wp-json\/wp\/v2\/posts\/694\/revisions"}],"predecessor-version":[{"id":3038,"href":"https:\/\/kienthucmo.com\/vi\/wp-json\/wp\/v2\/posts\/694\/revisions\/3038"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kienthucmo.com\/vi\/wp-json\/wp\/v2\/media\/3020"}],"wp:attachment":[{"href":"https:\/\/kienthucmo.com\/vi\/wp-json\/wp\/v2\/media?parent=694"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kienthucmo.com\/vi\/wp-json\/wp\/v2\/categories?post=694"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kienthucmo.com\/vi\/wp-json\/wp\/v2\/tags?post=694"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}