Xin chào tất cả các bạn, mình là Quân, hôm nay mình sẽ hướng dẫn các bạn giải quyết một thuật toán khá thú vị đó là “Tìm phần tử bị lặp đầu tiên trong mảng” nhé, thuật toán này cũng thường được sử dụng trong các bài phỏng vấn mà mình đã từng gặp, và chính mình cũng từng sử dụng nó như một bài test nhỏ để phỏng vấn ngược lại cho các bạn ứng tuyển vào công ty. 😀
“Bài này nằm trong loạt bài Xử lý thuật toán với JavaScript trên trang blog chính thức trungquandev.com“
Những nội dung có trong bài:
- Video bài giảng
- Code demo và link GitHub của bài học
1. Video bài giảng
Thuật toán Tìm phần tử bị lặp đầu tiên trong mảng dữ liệu
2. Code demo và link GitHub của bài học
Đây sẽ là code cho các bạn preview nhé, các bạn có thể xem thêm nhiều bài thuật toán khác tại link GitHub bên dưới nhé:
/** * https://trungquandev.com * --- Đề bài --- * - Cho một Array ví dụ ['a', 'b', 'a', 'd', 'd', 'e', 'b', 'x', 'y', 'z'] * - Yêu cầu tìm phần tử bị duplicate đầu tiên trong Array (với độ phức tạp thuật toán tối ưu nhất có thể). */ const list = ['a', 'b', 'a', 'c', 'd', 'x', 'y', 'z'] const getFirstDuplicateValueOfArray = (array) => { let tmp = {} for (const value of array) { if (tmp[value]) return tmp[value] tmp[value] = value } return -1 } const foundDupValue = getFirstDuplicateValueOfArray(list) if (foundDupValue === -1) { console.log('No result found.') } else { console.log(`First duplicate value is: ${foundDupValue}`) }
Đây là link repo GitHub chính chứa toàn bộ các bài thuật toán trong chuỗi Series Xử lý thuật toán với JavaScript trên trang blog chính thức Trungquandev này cũng như kênh YouTube: Trungquandev Official của mình, các bạn nhớ đừng quên tặng mình 1 star vào repo nha ^^!
https://github.com/trungquandev/trungquandev-public-utilities-algorithms
Cảm ơn các bạn đã dành thời gian đọc bài viết.
Xin chào và hẹn gặp lại các bạn ở những bài viết tiếp theo.
Best Regards – 💻 Trungquandev Official ❤
Tham khảo kiến thức:
https://en.wikipedia.org/wiki/Algorithm
https://en.wikipedia.org/wiki/Time_complexity
“Thanks for awesome knowledges.”
“ From author: trungquandev ”