Đề Xuất 3/2023 # Cách Reset Windows 10, 7 Đơn Giản, Không Mất Dữ Liệu 2022 # Top 5 Like | Comforttinhdauthom.com

Đề Xuất 3/2023 # Cách Reset Windows 10, 7 Đơn Giản, Không Mất Dữ Liệu 2022 # Top 5 Like

Cập nhật nội dung chi tiết về Cách Reset Windows 10, 7 Đơn Giản, Không Mất Dữ Liệu 2022 mới nhất trên website Comforttinhdauthom.com. Hy vọng thông tin trong bài viết sẽ đáp ứng được nhu cầu ngoài mong đợi của bạn, chúng tôi sẽ làm việc thường xuyên để cập nhật nội dung mới nhằm giúp bạn nhận được thông tin nhanh chóng và chính xác nhất.

Bắt đầu từ Windows 8 trở đi, Microsoft đã trang bị cho các hệ điều hành tính năng để  reset windows lại từ lúc ban đầu. Tính năng này vô cùng hữu dụng khi bạn ít am hiểu về máy tính hoặc ngại tìm hiểu để cài win lại.

Vậy tại sao bạn cần phải Reset Windows 10 về trạng thái ban đầu và làm thế nào để Reset Win 10 hoặc Win 7 mà không bị mất dữ liệu, bản quyền?

Tại sao cần phải Reset Windows 10 về trạng thái ban đầu?

Máy chậm: Nguyên nhân khiến nhiều người muốn reset lại máy tính là đây. Máy chậm khiến các thao tác chậm chạm. phần mềm chạy giật giật khiến bạn cảm thấy bực bội. Đây là lúc bạn nên cài lại window.

Máy tính bị nhiễm virus: Virus có thể đến với máy tính của bạn bất cứ lúc nào. Và để đánh bay virus nhanh chóng bạn có thể sử dụng chức năng reset window.

Máy tính có quá nhiều phần mềm, các file rác quá nhiều khiến bạn không muốn xử lý từng cái một.

Nếu bạn bị các trường hợp như ví dụ trên, thì sử dụng tính năng reset win là một trong những phương pháp phù hợp nhất.

Hướng dẫn Reset Win 10, 7 đơn giản, nhanh nhất và không mất dữ liệu

Bước 1: Vào Start, chọn Settings hoặc bấm tổ hợp phím Windows + I để vào phần settings nhanh chóng.

Bước 2: Ở của sổ Settings ,bạn tìm đến Update & Security 

Keep up files: khi chọn tùy chọn này sẽ xóa hết các ứng dụng, phần mềm mà bạn đã cài trên máy tính của mình. Tuy nhiên, các file cá nhân nghĩa là  các file nằm trong thư mục :CUserTên người dùng ( mặc định là vậy ).

Remove everything: Nghe tên thôi là đủ biết là nó sẽ xóa toàn bộ tất cả mọi thứ trên máy tính không chừa lại một thứ gì kể cả các file cá nhân của bạn. Coi như toàn bộ mọi thứ về như mới.

Đến lúc này, bạn hãy nghỉ để lựa chọn phương án phù hợp nhất. Nếu không có file nào quan trọng, bạn nên sử dụng các thứ 2 để làm sạch máy 1 cách toàn diện nhất. Còn có nhiều file quan trọng cần lưu trữ thì bạn có thể chọn cách thứ 2. Hoàn toàn phụ thuộc vào bạn.

Bước 6: Đến bước này, Windows sẽ bảo bạn là sẽ có những gì. Theo hình ảnh thì nó bảo sẽ xóa tất cả các ứng dụng và phần mềm, những cài đặt hiện tại sẽ trở về trnajg thái mặc định,…

Ở bước này, bạn chỉ cần chọn Reset nếu bạn đã chắc chắn muốn reset lại máy tính.

Bước 7. Đợi! Bạn cần đợi 1 thời gian nhất định để Windows có thể thực hiện tiến trình reset lại máy tính về trạng thái lúc đầu. Giữ nguyên như thế đến khi xong.

Bước 8: Sau khi quá tình kết thúc, bạn sẽ làm một số thao tác thiết lập cơ bản như: chọn Quốc gia, Ngôn ngữ, múi giờ,…

Bước 10: Một số thông tin khác, bạn cứ điền như nhập form thôi.

Như vậy, bạn đã reset máy tính thành công với tính năng có sẵn của Windows 10. Nhưng để có được một máy tính chạy trơn tru, mượt mà và tốt nhất thì hãy đối xử nó như chính người thân của mình vậy.

Hãy giữ nó luôn sạch sẽ ngăn nắp và bạn sẽ không phải mở lại bài viết này để đọc lại 1 lần nữa đâu.

Có thể bạn sẽ quan tâm: 

5

/

5

(

2

bình chọn

)

Cách Lọc Dữ Liệu Excel Đơn Giản Bằng Công Cụ Filter

Cách Lọc Dữ Liệu Excel Đơn Giản Bằng Công Cụ Filter

Việc sử dụng bảng tính excel đã không còn trở nên xa lạ đối với tất cả mọi người, tất cả mọi ngành nghề. Vậy, để việc sử dụng excel được thuận tiện và nhanh chóng trong cách xử lý dữ liệu thì chúng ta nên biết các mẹo để lọc dữ liệu excel. Vừa tiết kiệm thời gian, xử lý dữ liệu nhanh còn giúp cho hiệu suất công việc tăng cao.

Bộ lọc trong excel là gì?

Cách thêm bộ lọc Filter trong Excel

Cách 1: Trên tab Data, trong nhóm Sort và Filter, bạn chọn nút Filter để thực hiện quá trình lọc dữ liệu excel.

Cách 2: Trên tab Home, trong nhóm Editing, bạn chọn Sort à Filter

Cách 3: Cách nhanh nhất bạn có thể sử dụng phím tắt: Ctrl Shift + L

Lọc một vùng dữ liệu

Để có thể thực hiện lọc dữ liệu một vùng trong excel các bạn thực hiện theo các bước sau:

Bước 1: Chọn vùng dữ liệu cần lọc ( nên để tiêu đề ở đầu mỗi cột để thao tác được chính xác). Trên thanh Data, bạn kích chuột chọn Filter.

Bước 3: Chọn phép so sánh thích hợp ( VD: để chọn các số giữa giới hạn nhỏ nhất và lớn nhất, bạn chọn Between).

Bước 4: Trong hộp Custom AutoFilter, chọn khoảng giới hạn để lọc dữ liệu.

Bước 5: Chọn Ok để hoàn thành việc lọc một vùng dữ liệu.

Lọc dữ liệu trong bảng excel

Bước 1: Chọn vùng dữ liệu cần lọc ( nên để tiêu đề ở đầu mỗi cột để thao tác được chính xác). Trên thanh Data, bạn kích chuột chọn Filter.

Bước 4: Chọn Ok. Dữ liệ bạn lọc sẽ được hiển thị còn những dữ liệu không mong muốn sẽ tạm thời bị ẩn đi.

Rút trích dữ liệu ngày tháng trong Excel

Bước 1: Dùng hàm Date để lấy các dữ liệu ngày, tháng, năm từ dữ liệu gốc

Hàm Date: =Date(Year(D3), Month(D3), Day(D3))

Bước 2: Định dạng dữ liệu ở cột kết quả bước 1 về dạng ngày,tháng năm: dd/mm/yy.

Bước 3: Áp dụng Data Filter vào cột kết quả bước 1, tìm kiếm những giá trị #VALUE! và sửa lại ngày ở dữ liệu gốc về đúng định dạng.

– Xử lỹ dữ liệu gốc ở những dòng mà hàm DATE báo lỗi về đúng định dạng ngày bằng cách sửa trực tiếp từng ô ở cột D.

– Sau khi sửa ta được kết quả như sau (áp dụng cho cả 2 cột K và L).

Bước 4: Bỏ chế độ lọc, copy toàn bộ kết quả ở cột K và cột L, paste giá trị (Paste special – Value) sang cột dữ liệu gốc. Giá trị khi bạn copy ra sẽ định dạng dưới dạng dd/mm/yy.

Bước 5: Vì dữ liệu có 2 cột Ngày vào và Ngày ra, nên cần kiểm tra thêm 1 quy ước nữa là Ngày ra phải lớn hơn ngày vào. Ta lấy Ngày ra – Ngày vào để kiểm tra.

Với những giá trị có kết quả <0, sửa tay trực tiếp vào ô Ngày ra (do dữ liệu ngày ở đây khi trích xuất ra excel bị hiểu là dạng mm/dd/yyyy chứ không phải dd/mm/yyyy.

Cách lọc dữ liệu trùng trong Excel

1. Lọc dữ liệu trùng trong excel 2019, 2016, 2013

Trên những phiên bản Excel 2016, 2013 rất nhiều tính năng và thao tác làm việc đã được tối ưu hóa nhằm thực hiện các nhiệm vụ một cách nhanh nhất có thể.

Để thực hiện lọc dữ liệu trùng trong excel bạn cần thực hiện các bước sau:

Bước 1: Bôi đen toàn bộ dữ liệu cần phải lọc. Sau đó chọn Data à Remove Duplicates.

Bước 2: Sau đó hộp thoại Remove Duplicates xuất hiện. Bạn có 2 lựa chọn:

– Select All: lọc tất cả các dữ liệu.

– Unselect All: Lựa chọn các trường muốn lọc để lọc dữ liệu.

Sau khi chọn lựa bạn nhấn Ok để hoàn tất.

Bước 3: Tiếp theo, bạn sẽ thấy hộp thoại Microsoft Excek xuất hiện. Trên đó hiển thị số lượng mẫu trùng, số mẫu bị xóa và tổng số giá trị sửa lại để bạn nắm bắt dễ dàng. Nhấn Ok là bạn đã hoàn tất việc lọc dữ liệu.

2. Các bước để lọc dữ liệu trùng trong excel 2010, 2007

Có 2 cách để chúng ta có thể lọc dữ liệu trùng trong excel:

Cách 1: Lọc dữ liệu excel trùng bằng Conditional Formatting

Bước 1: Bôi đen vùng dữ liệu bị trùng cần phải lọc.

Cách 2: Lọc và xóa dữ liệu trùng bằng Remove Duplicate. Cách này bạn có thể thực hiện đơn giản hơn so với cách 1

Bước 1: Bạn thực hiện bôi đen vùng dữ liệu trùng cần lọc hoặc xóa.

Bước 2: Bạn vào thẻ Data à Remove Duplicate. Bạn chọn lọc toàn bộ hoặc một vùng dữ liệu rồi nhấn OK. Vậy là bạn đã có vùng dữ liệu cần lọc được hiển thị.

Lọc dữ liệu excel trùng trong Excel 2003

Bước 1: Bôi đen toàn bộ dữ liệu bạn cần lọc.

Bước 2: Tiếp theo trên thanh công cụ bạn chọn Conditional Formatting à New Rule.

Bước 3: Cửa sổ Edit New Rule xuất hiện. Tại đây, bạn chọn Use formula to determine which cells to format. Sau đó nhập công thức lọc tại ô Format values where this format is true. Bạn phải nhớ công thức chính xác mới thực hiện được. Cuối cùng chọn Ok để máy lọc dữ liệu trùng.

Cách tìm dữ liệu trong Excel

1. Tìm kiếm dữ liệu đơn giản trong excel bằng Find and Replace

Bước 1: Bôi đen cột dữ liệu cần tìm kiếm.

Bước 2: Nhấn tổ hợp phím Ctrl + F để mở hộp thoại Find and Replace, và bạn thực hiện điền dữ liệu vào ô Find What và chọn Find All.

2. Tìm dữ liệu trong cột nhờ công cụ Auto Filter

Bước 1: Bôi đen cột dữ liệu cần tìm kiếm. Vào thẻ Data chọn Filter để tạo bộ lọc nội dung.

Bước 2: Tại cột mà bạn chọn đã xuất hiện bộ lọc. Bạn nhấn vào biểu tượng mũi tên rồi nhập dữ liệu cần tìm kiếm và nhấn Ok bên dưới.

Kết quả excel sẽ cho bạn thấy những dữ liệu bạn đã nhập. Còn các dữ liệu khác sẽ tạm thời bị ẩn đi. Nếu bạn muốn hiển thị lại như ban đầu, bạn chỉ cần kích chuột vào biểu tượng mũi tên và nhấn chọn Select All.

3. Cách tìm dữ liệu trong nhiều Sheet Excel

Bước 1: Bạn nhấn tổ hợp phím Ctrl + F để mở công cụ Find & Replace. Bạn nhập dữ liệu cần tìm kiếm vào ô Find What..

Bước 2: Bạn chọn Options. Trong phần Within bạn chuyển về WordBook và chọn Find All để tìm kiếm

Bước 3: Kết quả bạn nhìn thấy toàn bộ vị trí ở các sheet có tên mà bạn muốn tìm kiếm. Nếu nhấn vào vị trí nào trong bảng tìm kiếm thì người dùng được di chuyển đến đúng vị trí đó trong bảng dữ liệu Excel.

Cách Dùng Bitlocker Để Mã Hóa Dữ Liệu Trên Windows 10 (Phần 1)

Sử dụng BitLocker để mã hóa dữ liệu trên Windows 10

Mật khẩu/khóa khôi phục là yếu tố cần thiết để mở khóa ổ được mã hóa. Hãy đảm bảo bạn lưu trữ mật khẩu và khóa khôi phục ở nơi an toàn và riêng biệt ngoài máy tính.

Để tránh làm hỏng/mất dữ liệu trong quá trình mã hóa, nên sử dụng một thiết bị mới hoặc gần như mới để mã hóa và không làm gián đoạn quá trình mã hóa.

Bật BitLocker để đi tới file mã hóa

1. Kết nối thiết bị lưu trữ di động của bạn với máy tính.

2. Truy cập vào Control Panel và chọn BitLocker Drive Encryption.

Chọn BitLocker Drive Encryption

3. Chọn ổ lưu trữ di động mà bạn muốn mã hóa và sau đó nhấp vào Turn on BitLocker.

Nhấp vào Turn on BitLocker

4. Đợi một lúc để việc khởi tạo BitLocker hoàn tất.

5. Chọn Use a password to unlock the drive và xác định mật khẩu của bạn. Nhập lại mật khẩu để xác nhận và sau đó nhấp vào Next.

Chọn Use a password to unlock the drive

6. Chọn nơi bạn muốn lưu khóa khôi phục cần thiết để truy cập ổ đĩa trong trường hợp bạn quên mật khẩu. Không nên sử dụng tùy chọn Save to your cloud domain account, vì nó yêu cầu máy tính của bạn tham gia Microsoft Azure Active Directory hiện không được cung cấp. Thay vào đó, bạn nên sử dụng tùy chọn Save to a file và lưu trữ khóa khôi phục ở nơi an toàn. Sau khi lưu khóa khôi phục, nhấp vào Next.

Sử dụng tùy chọn Save to a file

7. Chọn cách bạn muốn mã hóa ổ. Nếu bạn đang sử dụng một ổ mới, hãy chọn Encrypt used disk space only. Nếu bạn đang sử dụng một ổ có dữ liệu, hãy chọn Encrypt entire drive. Sau đó nhấp vào Next.

Chọn cách bạn muốn mã hóa ổ

8. Chọn chế độ mã hóa. Nếu dự định sử dụng ổ được mã hóa trên các phiên bản Windows cũ, hãy chọn Compatible mode. Nếu bạn sẽ chỉ sử dụng ổ trên máy Windows 10, hãy chọn New encryption mode, chế độ mã hóa tốt hơn. Sau đó nhấp vào Next.

Chọn chế độ mã hóa

9. Nhấp vào Start encrypting khi đã sẵn sàng.

Nhấp vào Start encrypting

10. Quá trình mã hóa có thể mất một chút thời gian, tùy thuộc vào các yếu tố khác nhau, bao gồm tốc độ của thiết bị lưu trữ, hiệu suất của PC, v.v… (Microsoft ước tính tốc độ mã hóa là khoảng 500MB/phút). Làm gián đoạn quá trình có thể dẫn đến hỏng/mất dữ liệu.

11. Nhấp vào Close khi việc mã hóa hoàn tất.

Lần tới khi bạn kết nối ổ được mã hóa với máy tính, hãy nhập mật khẩu để mở khóa ổ.

Hãy nhập mật khẩu để mở khóa ổ

Sử dụng khóa khôi phục để mở khóa ổ

Trong trường hợp bạn quên mật khẩu mở khóa hoặc vì bất kỳ lý do gì bạn không thể truy cập vào ổ được mã hóa, bạn có thể mở khóa ổ bằng khóa khôi phục.

1. Nhấp chuột phải vào ổ được mã hóa từ File Explorer, sau đó nhấp vào Unlock Drive.

Nhấp vào Unlock Drive

2. Nhấp vào More options trong cửa sổ pop-up.

Nhấp vào More options

3. Hãy chắc chắn rằng “Automatically unlock on this PC” đã được chọn và nhấp vào Enter recovery key.

Nhấp vào Enter recovery key

4. Nhập khóa khôi phục và nhấp vào Unlock.

Nhấp vào Unlock

5. Ổ sẽ được mở khóa.

Thay đổi mật khẩu mở khóa

1. Mở khóa ổ được mã hóa với mật khẩu hiện có.

2. Chuyển đến Control Panel và sau đó chọn BitLocker Drive Encryption.

Chọn BitLocker Drive Encryption

3. Xác định vị trí ổ được mã hóa và nhấp vào Change password.

Nhấp vào Change password

4. Nhập mật khẩu cũ. Xác định mật khẩu mới và nhập lại để xác nhận. Sau đó bấm vào Change password.

Xác định mật khẩu mới và nhập lại để xác nhận

5. Mật khẩu được thay đổi. Nhấp vào Close.

Mã hóa là gì?

Mã hóa là một phương pháp bảo mật thông tin không cho phép người khác sử dụng trái phép. Khi mã hóa thông tin của bạn, bạn vẫn có thể sử dụng thông tin này thậm chí là có thể chia sẻ nó với những người dùng khác.

Nếu bạn gửi một tài liệu Word đã được mã hóa cho một người nào đó thì người đó sẽ phải giải mã nó. Trên Windows 10 có nhiều kiểu mã hóa khác nhau, mã hóa hệ thống File – Encrypting File System (EFS) hoặc sử dụng BitLocker để mã hóa dữ liệu (BitLocker Drive Encryption)….

Một số lưu ý

Mã hóa toàn bộ ổ đĩa cứng là một quá trình lâu dài. Trước khi kích hoạt BitLocker, bạn nên sao lưu toàn bộ dữ liệu trên máy tính của bạn để tránh trong trường hợp nếu quá trình mã hóa đang diễn ra mà vô tình bị mất điện, bạn không có UPS (bộ lưu điện).

Phiên bản Windows 10 November Update có một chế độ mã hóa an toàn hơn, bạn có thể tận dụng lợi thế này. Lưu ý, tiêu chuẩn các mã hóa mới chỉ tương thích với hệ thống Windows 10 November Update khác.

Nếu bạn đang sử dụng Windows 10 trên dòng máy tính cũ mà không có chip Trusted Platform Module (TPM 1.2), bạn không thể thiết lập BitLocker.

Disjoint Set Cấu Trúc Dữ Liệu Đơn Giản Mà Hiệu Quả

Bất kì bài toán tin học nào cũng được giải quyết dựa trên thuật toán (Algorithm) và cấu trúc dữ liệu biểu diễn nó (Data Structure). Algorithms + Data Structures = Programs Tuy nhiên, trong quá trình giải quết bài toán ta thường quá chú tâm tới giải thuật mà quên mất rằng việc lựa chọn cấu trúc dữ liệu hợp lý ảnh hưởng rất nhiều tới thuật toán. Hay hiệu quả của thuật toán phụ thuộc vào cấu trúc dữ liệu được sử dụng.

Cấu trúc dữ liệu cũng rất đa dạng từ những cấu trúc dữ liệu đơn giản như mảng một chiều, nhiều chiều tới ngăn xếp, hàng đợi, bảng băm, cấu trúc dữ liệu dạng cây như cây nhị phân, heap, … và những cấu trúc dữ liệu nâng cao khác.

Ngoài ra còn có một dạng cấu trúc dữ liệu cài đặt khá đơn giản nhưng rất hiệu quả trong nhiều bài toán đó là Disjoint set.

Disjoint set là gì ?

Theo wikipedia: https://en.wikipedia.org/wiki/Disjoint-set_data_structure

Disjoint set là một cấu trúc dữ liệu theo dõi (tracking) một tập các phần tử được phân chia thành các tập con khác nhau không chồng chéo nhau (non-overlapping). Hay đơn giản hơn ta có ví dụ sau:Bài toán 1 Ta có 6 thành phố là A, B, C, D, E, F. Thành phố A có thể đi tới thành phố B và C. Thành phố B có thể đi tới thành phố D. Thành phố E có thể đi tới thành phố F. Các thành phố xảy ra chiến tranh những thành phố có đường đi trưc tiếp ( chẳng hạn từ A tới B và C) hoặc gián tiếp ( từ A tới D qua B) thì tướng lĩnh của thành phố đó có thể đem quân đánh chiếm thành phố khác sáp nhập làm của mình tạo thành một vùng mới và có 1 vị vua cai quản. Vậy khi tàn cuộc có bao nhiêu vùng đất khác nhau được cai quản bởi các vị vua. Để tìm số vùng đất được cai quản bởi các vị vua khác nhau ta sẽ chia tập hợp các thành phố {A, B, C, D, E, F} thành các tập con sao cho hai tập con bất kì không thể có đường đi từ thành phố của tập con này tới thành phố của tập con kia. Dễ thấy các vùng đất {A, B, C, D} có đường đi với nhau cuối cùng sẽ gộp chung lại thành 1 vùng đất được cai quản bởi 1 vị vua. Tuy nhiên vị vua đó không thể tiến đánh các thành phố E, F do không có đường đi. Cuối cùng sẽ chỉ có 2 vùng đất được tạo thành bởi các thành phố {A, B, C, D} và {E, F}.

Bài toán 2 Với một bài toán tương tự nhưng ta xét một ví dụ dễ biểu diễn trong máy tính hơn đó là: Cho tập hợp gồm N phần tử A = {1, 2, 3, 4, 5, 6, 7, 8 } các phần tử (1, 2) (1, 3) (2, 3) (4, 7) (4, 8) (5, 6) có liên kết với nhau. Tìm các tập hợp con mà giữa 2 tập hợp không có liên kết trực tiếp hoặc gián tiếp.

Nếu không sử dụng ý tưởng cấu trúc dữ liệu disjoint set ta có cách tiếp cận sau Sử dụng mảng link[] để theo dõi liên kết giữa 2 phần tử tức phần tử 1 và 8 có liên kết với nhau nếu link[1] = link[8]. Giả sử ban đầu chưa có liên kết nào được thêm vào thì mỗi phần tử sẽ là 1 tập con link[] = {1, 2, 3, 4, 5, 6, 7, 8}. Bây giờ ta sẽ duyệt qua tất cả phần tử và kiểm tra liên kết trực tiếp của nó. Khi thêm liên kết ta sẽ thực hiện 2 thao tác đó là

find(x, y) kiểm tra x và y có liên kết chưa (link[x] == link[y])

union(x, y) hợp x vào y và tất cả các phần tử liên kết với x cũng đều liên kết với y.

Chẳng hạn: Bắt đầu với 1 có

Tiếp theo với phần tử 2

Ý tưởng của disjoint set

Lúc này ta có 3 cây với 3 root là 5, 6, 4 là 3 tập hợp con. Do ta xây dựng 3 tập hợp con là cấu trúc dạng cây nên để kiểm tra 2 phần tử có liên kết hay không ta chỉ cần kiểm tra xem chúng có chung root hay không find(x, y) sẽ thực hiện findSet(x) == findSet(y) với findSet(x) trả về phần tử root của tập hợp chứa x. Ví dụ findSet(2) = 4, findSet(7) = 4. Độ phức tạp thuật toán là O(logN) hàm findSet sẽ đệ quy theo chiều cao của cây.

Cài đặt disjoint set

Ở bước khởi tạo ta coi mỗi phần tử là 1 cây với 1 nút root là chính nó thông qua makeSet(x)

Tiếp theo ta viết hàm xác định tập hợp (cây) chứa x

Cuối cùng là union thay vì luôn gắn root của cây chứa y vào root của cây chứa x ta thực hiện union by rank

Với các ví dụ trên việc áp dụng cấu trúc dữ liệu disjoint set thay vì độ phức tạp là O(N2) sẽ có độ phức tạp là 0(NlogN)

Ứng dụng

Ta cần xây dựng 1 hệ thống cáp nối tất cả các điểm trong thành phố A, B, C, D, … Tuy nhiên chi phí cáp giữa các điểm là khác nhau. MST giúp ta xác định đươc 1 hệ thống (dạng cây) nối tất cả các điểm với chi phí nhỏ nhất như hình vẽ.

Ý tưởng của thuật toán Kruskal dựa trên disjoint set và tham lam đã được trình bày ở đây: https://viblo.asia/p/cac-dang-bai-su-dung-thuat-toan-tham-lam-greedy-algorithm-problems-924lJARYZPM#_cac-bai-toan-lien-quan-toi-do-thi-6

Xây dựng hệ thống đếm số lượng bạn chung (mutual friends)

Hiện tại một nhóm sinh viên trong trường đang có trang social networking giúp kết nối bạn bè trong trường học tương tác với nhau, những người e ngại việc sử dụng facebook do bị leak thông tin. Một trong số những tính năng mà adminstrator đang cần bạn phát triển đó là hiển thị số lượng bạn chung (mutual friend) của giữa X và Y ở đây tất những người bạn trực tiếp với X hay gián tiếp qua một người bạn Z của X lúc này có thể coi là bạn chung với Y. Các requirement bạn nhận được như sau:

Nếu user A gửi request cho user B thì A sẽ following B. A và B chỉ là bạn bè khi B cũng following A

Khi A và B đã là bạn bè, có thể xem được số lượng bạn chung giữa A và B.

Phân tích Đối với yêu cầu 1 ta xây dựng 1 mảng vector following[] cho từng user quản lí id của các user khác đang following A. Chẳng hạn following[3] sẽ là 1 vector chứa các id của user đang following user có id là 3. A và B là bạn bè khi following của B chứa id của A và ngược lại.

Khi A và B đã là bạn bè ta sẽ hợp (union) X và Y.

Đối với yêu cầu 2 khi nhận được yêu cầu đếm số lượng bạn chung giữa A và B ta chỉ việc kiểm tra xem A và B có chung root hay không nó có trả về số lượng thành viên của root đó.

Note: Ở trên ta cài đặt union by rank theo độ cao của cây. Tuy nhiên đối với bài toán này ta cần lưu trữ số lượng thành viên của root (số lượng phần tử trong cây của root) nên ta thực hiện union by size thay vì union by rank

Để dễ biểu diễn nhất ta quy định yêu cầu 1 sẽ truyền và params là ‘following’ A_id B_id với A_id là user_id người gửi request following cho B_id. yêu cầu 2 sẽ truyền params là ‘mutual friends’ A_id B_id.

Ta có implement đơn giản trong C như sau

Bạn đang đọc nội dung bài viết Cách Reset Windows 10, 7 Đơn Giản, Không Mất Dữ Liệu 2022 trên website Comforttinhdauthom.com. Hy vọng một phần nào đó những thông tin mà chúng tôi đã cung cấp là rất hữu ích với bạn. Nếu nội dung bài viết hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất. Chúc bạn một ngày tốt lành!