1. Trang chủ
  2. » Ôn thi đại học

Kỹ thuật lập trình - Tinh chỉnh mã nguồn

7 5 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 7
Dung lượng 250,02 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

[r]

Trang 1

K thu t l p trình Nâng caoỹ ậ ậ

Lê gia Minh

Trang 2

N i dung ộ

Ôn t p.ậ

Khái ni m v tinh ch nh mã ngu n.ệ ề ỉ ồ

M t s k thu t tinh ch nh mã ngu n.ộ ố ỹ ậ ỉ ồ

M t s ví d ộ ố ụ

Trang 3

Khái ni m tinh ch nh mã ngu n ệ ỉ ồ

M t ch ộ ươ ng trình hi u q a ệ ủ

 Biên d ch nhanh (công s c l p trình) ị ứ ậ

 Y u t th i gian: ế ố ờ NHANH (góc nhìn c a user)

 Y u t l u tr : ế ố ư ữ NH Ỏ (y u t không gian)ế ố

Khó đ t đ ạ ượ c c ba ả

Ngày nay: Y u t th i gian đ ế ố ờ ượ c xem tr ng ọ

Mu n biên d ch nhanh ố ị  B Optimizer khi biên ỏ

d ch ( ph thu c vào compiler ) ị ụ ộ

Dùng các c u trúc d li u h p lý ấ ữ ệ ợ , c i ti n gi i ả ế ả thu t, s d ng các phat bi u h p lý cũng giúp ậ ử ụ ể ợ

làm tăng đáng k v hi u su t th i gian ch y ể ề ệ ấ ờ ạ

c a ch ủ ươ ng trình.

Trang 4

Khái ni m tinh ch nh mã ngu n (tt) ệ ỉ ồ

Hai y u t th i gian và không gian mâu ế ố ờ thu n nhau ẫ  Mu n ố ch y nhanh ạ thì

ch p nh n ấ ậ kích th ướ c ch ươ ng trình

l n ớ

( thí d : ụ b b t các l i g i hàm ỏ ớ ờ ọ )

Ngày nay, v i s ti n b c a k thu t, ớ ự ế ộ ủ ỹ ậ

CPU t c đ cao, b nh l n, khuynh ố ộ ộ ớ ớ

hướng hi n nay là ch p nh n d th a d ệ ấ ậ ư ừ ữ

Trang 5

Thí dụ

Thí d : Có khai báo c u trúc v đo n th ng ụ ấ ề ạ ẳ

struct Line

{ int x1,y1; // đi m đ u ể ầ

int x2,y2; // đi m cu i ể ố

};

double getLen (Line L) // hàm tính đ dài ộ

{ return sqrt( (L.y2-L.y1)*(L.y2-L.y1) +

(L.x2-L.x1)*(L.x2-L.x1));

}

 M i l n truy xu t đ dài 1 đo n th ng, 8 l n truy xu t d ỗ ầ ấ ộ ạ ẳ ầ ấ ữ

li u (bi n), 4 phép tr , 2 phép nhân, m t phép c ng và 1 ệ ế ừ ộ ộ

l i g i hàm sqrt đ ờ ọ ượ c th c thi ự

Trang 6

Binary Search

{

int L = 0, R = n-1;

int m ;

while(1)

if (L>R) return –1;

m = (L+R)/2;

if (A[m]==T) return m ;

else if (A[m]<T) L = m+1;

else if (A[m]>T) R = m-1;

}

}

Trang 7

Bài t p ậ

Tinh ch nh code sau :ỉ

if (strcmp(s1,s2)==0) printf(“equal”);

else if (strcmp(s1,s2) >0) printf(“greater than”); else printf(“less than”);

Gi i h phả ệ ương trình :

X + Y + Z = M

X3 + Y3 + Z3 = N X,Y,Z :nguyên

dương

Ngày đăng: 10/03/2021, 14:48

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w