Kỹ Thuật Con Trỏ và Xử Lý Chuỗi Trong Ngôn Ngữ C
Nhiệm vụ 1.1
#include <stdio.h>
#define MAX_SIZE 5
void readData(int elements[], int size);
void printArray(int elements[], int size);
void findMinMaxValues(int elements[], int size, int *minPtr, int *maxPtr);
int main() {
int data[MAX_SIZE];
int minValue, maxValue;
printf("Nhập %d số nguyên:\n", MAX_SIZE);
readData(data ...
Đăng vào ngày 8 tháng 6 lúc 21:04
Thực hành lập trình C: Con trỏ, Mảng và Thao tác chuỗi
1. Quản lý mảng và con trỏ
Trong C, việc truyền mảng vào hàm thực chất là truyền địa chỉ của phần tử đầu tiên. Dưới đây là ví dụ minh họa cách tìm giá trị nhỏ nhất và lớn nhất trong một mảng sử dụng con trỏ để trả về kết quả thông qua tham số:
#include <stdio.h>
void get_range(int *arr, int len, int *min, int *max) {
*min = *max = ar ...
Đăng vào ngày 6 tháng 6 lúc 17:04
Thuật toán đánh dấu ba màu trong JVM
Giới thiệu thuật toán đánh dấu ba màu
Trình thu gom rác (GC) có mục tiêu chính là thực hiện việc thu hồi bộ nhớ, trong quá trình này gồm hai bước chính: đánh dấu bộ nhớ, thu hồi bộ nhớ.
Khái niệm đánh dấu ba màu
Phương pháp đánh dấu ba màu chủ yếu nhằm mục đích đánh dấu hiệu quả các khối bộ nhớ có thể được thu hồi.
Đánh dấu ba màu (Tri-colo ...
Đăng vào ngày 31 tháng 5 lúc 16:44
Cơ Chế Hoạt Động Và Phạm Vi Của Hàm Trong Python
Tổng Quan Về Định Nghĩa Hàm
Khi xây dựng các hàm tự định nghĩa, developer cần nắm vững cấu trúc cơ bản cũng như các cơ chế nâng cao như xử lý tham số linh hoạt và closure (bao đóng).
Cơ Chế Truyền Tham Số
Trong Python, cơ chế truyền tham số thực chất là truyền tham chiếu đến đối tượng (memory address). Điều này có nghĩa là biến bên trong hàm s ...
Đăng vào ngày 30 tháng 5 lúc 21:54
Phân biệt và Áp dụng Hàm Trỏ và Trỏ Hàm trong Ngôn ngữ C
Hàm trỏ (function pointer) và trỏ hàm (pointer to function) là hai khái niệm thường bị nhầm lẫn do cách đặt tên gần giống nhau, nhưng bản chất và cách sử dụng hoàn toàn khác biệt. Trong C, việc hiểu rõ sự khác biệt này là chìa khóa để xây dựng các hệ thống linh hoạt như bảng hàm xử lý sự kiện, cơ chế callback, hoặc thiết kế mô-đun có thể mở rộn ...
Đăng vào ngày 29 tháng 5 lúc 07:27
Khảo sát Cấu trúc Dữ liệu Mảng và Thuật toán Cơ bản trong C
1. Khảo sát vùng nhớ của mảng một chiều và hai chiều
Đoạn mã dưới đây minh họa cách bộ nhớ được cấp phát cho các mảng trong C. Chúng ta sẽ kiểm tra kích thước thực tế占用 (sizeof) và địa chỉ của từng phần tử để xác định tính liên tục của vùng nhớ.
#include <stdio.h>
#define SIZE_1D 4
#define ROWS 2
#define COLS 4
void analyze_1d() {
...
Đăng vào ngày 27 tháng 5 lúc 21:43
Cấu Trúc Dữ Liệu Ngăn Xếp: Cơ Chế Và Các Trường Hợp Sử Dụng
Khái niệm cơ bản về Ngăn xếp (Stack)
Ngăn xếp (Stack) là một dạng cấu trúc dữ liệu tuyến tính, nơi mà các thao tác thêm mới hoặc xóa bỏ phần tử chỉ được phép thực hiện tại một đầu duy nhất. Đầu này được gọi là đỉnh ngăn xếp (Top), trong khi đầu đối diện được xem là đáy (Bottom).
Thao tác đưa phần tử vào ngăn xếp được gọi là đẩy (Push), còn thao ...
Đăng vào ngày 25 tháng 5 lúc 12:20
Phân tích cơ chế bộ nhớ và thuộc tính tĩnh trong Python
Cơ chế tham chiếu và biến đổi bộ nhớ
Trong Python, việc hiểu rõ cách các kiểu dữ liệu khác nhau quản lý bộ nhớ là nền tảng quan trọng để tránh các lỗi logic phổ biến. Chúng ta sẽ xem xét sự khác biệt giữa kiểu dữ liệu bất biến (immutable) và kiểu dữ liệu có thể biến đổi (mutable) thông qua việc quan sát địa chỉ bộ nhớ.
1. Kiểu chuỗi (String)
C ...
Đăng vào ngày 16 tháng 5 lúc 12:24