STDIO
Tìm kiếm gần đây

    Nội dung

    Một Số Hàm Hữu Ích Trong Thư Viện Algorithm C++ (STL)

    02/03/2016
    27/03/2020
    Một Số Hàm Hữu Ích Trong Thư Viện Algorithm C++ (STL)
    Việc vận dụng những thư viện hỗ trợ trong C++ rất quan trọng. Đặc biệt là sử dụng thư viện algorithm để hỗ trợ giải quyết những vấn đề một cách nhanh chóng thay vì phải viết lại. Bài viết dành cho những bạn muốn tìm hiểu về các hàm trong thư viện STL.

    Giới thiệu

    Việc vận dụng những thư viện hỗ trợ trong C++ rất quan trọng (STL). Đặc biệt là sử dụng thư viện algorithm để hỗ trợ giải quyết những vấn đề một cách nhanh chóng thay vì phải viết lại.

    Trong bài này tôi sẽ giới thiệu cách sử dụng và liệt kê một số hàm phổ biến thường dùng trong việc lập trình.

    Đối tượng hướng đến

    Những bạn đang học C++.

    Các bạn muốn tìm hiểu về thư viện thuật toán trong C++.

    Tiền đề bài viết 

    Trong quá trình tìm hiểu nhiều nguồn kể cả internet, thì tôi thấy có ít bài nói về sử dụng các hàm thư viện STL trong C++, đặc biệt là thư viện thuật toán.

    Nhờ sự hướng dẫn của anh Kevin La tôi xin viết một bài nói về nó.

    Hy vọng bài viết này sẽ giúp ích cho mọi người trong việc lập trình nhanh chóng.

    Cách khai báo

    #include <algorithm>

    Lưu ý: chỉ sử dụng trong C++.

    Các hàm mẫu của thư viện

    sort

    #include <iostream>
    
    #include <algorithm>
    
    using namespace std;
    
    int main()
    {
    	int a[] = {7, 5, 3, 4, 6};
    
    	sort(a, a + 5);
    
    	cout << "After sorting: ";
    
    	for(int i = 0; i < 5; i++)
    		cout << a[i] << " ";
    	return 0;
    }
    After sorting: 3 4 5 6 7

    min, max

    #include <iostream>
    
    #include <algorithm>
    
    using namespace std;
    
    int main()
    {
    	int a = 3;
    
    	int b = 4;
    
    	cout << "Min = " << min(a, b) << "; Max = " << max(a, b);
    
    	return 0;
    }
    Min = 3 ; Max = 4

    swap

    #include <iostream>
    
    #include <algorithm>
    
    using namespace std;
    
    int main()
    {
    	int a = 3;
    
    	int b = 4;
    
    	swap(a, b);
    
    	cout << "a = " << a << "; b = " << b;
    
    	return 0;
    }
    a = 4 ; b = 3

    reverse

    #include <iostream>
    
    #include <algorithm>
    
    using namespace std;
    
    int main()
    {
    	int a[] = {7, 5, 3, 4, 6};
    
    	reverse(a, a + 5);
    
    	cout << "After reversing: ";
    
    	for(int i = 0; i < 5; i++)
    		cout << a[i] << " ";
    
    	return 0;
    }
    
    After reversing: 6 4 3 5 7

    Kết luận

    Việc vận dụng các hàm có sẵn sẽ làm cho chương trình chạy nhanh, và giảm đi một phần nào việc viết lại code trong khi đã hỗ trợ sẵn. Rất mong nhận được những sự góp ý từ mọi người.

    Cảm ơn anh Kevin La góp ý và hoàn chỉnh hơn bài viết và những lời chỉ dẫn từ anh.

    Tài liệu tham khảo

    http://www.cplusplus.com/reference/algorithm/

    Thảo luận

    In order to comment you must be a STDIO Insider. Please sign up or log in to continue.

    Đăng nhập

    Bài viết liên quan

    STL - List Trong C++

    STL - List Trong C++

    STL là viết tắt của cụm từ Standard Template Library, là bộ thư viện chuẩn của C++, STL cung cấp các lớp cài đặt sẵn, cho phép thao tác với các kiểu dữ liệu cơ bản cũng ...

    Trung Nguyễn

    21/09/2014

    Random Số Trong C++

    Random Số Trong C++

    Hướng dẫn cách sinh ra số ngẫu nhiên và số ngẫu nhiên trong 1 khoảng xác định với hàm rand() trong C++ (thư viện cstdlib).

    Amy Lê

    16/06/2015

    Thao Tác Với Tài Liệu PDF Sử Dụng Thư Viện iTextSharp Trong C#

    Thao Tác Với Tài Liệu PDF Sử Dụng Thư Viện iTextSharp Trong C#

    Trong quá trình làm project chúng ta cần phải export thông tin cần thiết ra tài liệu PDF. Việc thao tác với tài liệu này không phải là dễ dàng vì cấu trúc phức tạp của ...

    Nguyễn Nghĩa

    16/10/2015

    Xây Dựng Hàm Có Tham Số Tuỳ Ý Trong C

    Xây Dựng Hàm Có Tham Số Tuỳ Ý Trong C

    Trong một số trường hợp, chúng ta cần truyền vào hàm một vài tham số mà chưa biết trước được số lượng. Giải pháp thông thường là đưa các phần tử đó vào một mảng hoặc một ...

    Rye Nguyen

    03/08/2015

    Vector Trong Unity

    Vector Trong Unity

    Trong môi trường game 3D, một vị trí hay vector được biểu diễn bằng 3 con số, đại diện cho 3 chiều không gian tương ứng. Trong Unity, Lớp Vector3 được sử dụng để biểu ...

    Rye Nguyen

    08/08/2015

    Khởi Tạo Môi Trường Lập Trình Game Sử Dụng Thư Viện SDL (Simple DirectMedia Layer)

    Khởi Tạo Môi Trường Lập Trình Game Sử Dụng Thư Viện SDL (Simple DirectMedia Layer)

    Trong quá trình xây dựng engine game, tôi cần một số thư viện cung cấp những hàm API để thao tác với hệ thống cấp thấp bên dưới như âm thanh, bàn phím, chuột và các hệ ...

    Nguyễn Nghĩa

    08/10/2015

    Một Số Hàm Xử Lý Đồ Hoạ Trong PHP

    Một Số Hàm Xử Lý Đồ Hoạ Trong PHP

    Ngày nay, nhu cầu về sử dụng đồ hoạ đang bùng nổ rất mạnh mẽ, kéo theo sự phát triển của các thư viện đồ hoạ trong những năm gần đây. Bài viết ra đời, nhằm cung cấp đến ...

    Ryan Lê

    30/03/2015

    Chuyển Một Chuỗi Sang Số Nguyên Với atoi Trong C++

    Chuyển Một Chuỗi Sang Số Nguyên Với atoi Trong C++

    Sử dụng hàm atoi, thư viện cstdlib chuyển một chuỗi thành một số nguyên trong C/C++.

    Trương Hoàng Vương

    14/05/2018

    Áp Dụng Kĩ Thuật OOP Trong Quá Trình Xây Dựng Framework Dựa Trên Thư Viện SDL

    Áp Dụng Kĩ Thuật OOP Trong Quá Trình Xây Dựng Framework Dựa Trên Thư Viện SDL

    Trong quá trình xây dựng Engine của bản thân mình, thông qua bài viết Khởi Tạo Môi Trường Lập Trình Game Sử Dụng Thư Viện SDL (Simple DirectMedia Layer) của Nghĩa Nguyễn ...

    Hoàng Thái

    09/09/2015

    Các Hàm memset() - memcpy() - memcmp() Trong C

    Các Hàm memset() - memcpy() - memcmp() Trong C

    Giới thiệu về các hàm thao tác trên bộ nhớ trong thư viện string.h

    Nguyễn Minh Hiếu

    21/07/2015

    STDIO
    Trang chính
    Công ty TNHH STDIO

    30, Trịnh Đình Thảo, Hòa Thạnh, Tân Phú, Hồ Chí Minh
    +84 28.36205514 - +84 942.111912
    developer@stdio.vn

    383/1 Quang Trung, Phường 10, Quận Gò Vấp, Hồ Chí Minh
    Số giấy phép ĐKKD: 0311563559 do sở Kế hoạch và Đầu Tư TPHCM cấp ngày 23/02/2012

    ©STDIO, 2013 - 2020