Hỏi & đáp lập trình

cám ơn nhiều, bạn upload lên đây luôn đi.

chổ cây nhiều nhánh thì hiểu sơ sơ rồi, nhưng vẩn còn vướng chổ file index.

nếu dùng cây nhiều nhánh thì mình làm thế này được kô, mổi node sẽ gồm: 1 biến data, 1 biến kiểu char chứa chữ cái, 24 biến con trỏ (trỏ tới 24 chữ cái tiếp theo)

Trời ạ, 1 sự phí phạm tài nguyên bô nhớ nghiêm trọng, 1 con trỏ tốn 4 byte, 1 node 24 con trỏ tốn 4*24 = 48 byte

ngoài ra nếu các từ tiếng Anh có nghĩa được phân bố rải đều trên các chữ cái thì cách trên cũng tạm ổn
nhưng thật đáng tiếc nó lại phân bố ngẩu nhiên không đồng đều (thường tập trung vào 1 số chữ cái)

Ví dụ để lưu chữ 'hello' ta sẽ tốn 5 node
h->e->l->l->o
tức là ta tốn 5*48 = 240 byte để lưu vị trí chữ hello

Giả sử ta đang ở mức 4
h->e->l->l
Ở mức tiếp theo, ngoài node o thì 23 node còn lại còn bao nhiêu node chứa chữ cái làm cho hell có nghĩa???
hella,hellb,hellc...hellz=))

Ở đây mình có cách giải quyết nhưng mình muốn nghe ý kiến bạn Brianlam trước, tại mình chưa làm chương trình viết từ điểm còn bạn ấy làm rồi, sợ múa rìu qua mắt thợ:D

Còn 2 bạn satthugiaumat1986 và Gaique9x định tranh luận nữa hả (đã cãi nhau hết mấy trang rồi mà chưa chịu sao), đang bàn luận về ngôn ngữ nào hay hơn à, vậy cứ cự tiếp đi:D
 
Cái đa xạ này bạn khai báo hơi bị kì kì hén , nếu làm trên C++/C thì trước tiên cái lớp ko có ";" cuối cùng :D , cái thứ 2 để hiểu rõ cơ chế của đa xạ nữa thì bạn nên dùng con trỏ .
Còn khái niệm đa xạ là 1 cơ chế tầm vực động , nó cho phép đối tượng xác định đúng phương thức mà nó được yêu cầu .
Còn việc xác định được thực hiện dựa trên nguyên tắc :Đối tượng thuộc lớp nào sẽ gọi thực hiện phương thức của lớp của đối tượng đó .
Vì thế nên đối tượng này thuộc lớp C , nó sẽ gọi phương thức out của Lớp C .
Còn nếu Lớp C ko có phương thức out , mà lớp B có (C kế thừa từ B) thì nó sẽ gọi phương thức của lớp B .
Nói đơn giản nhất có thể , nó sẽ tìm phương thức của lớp gần nó nhất , và sau đó thực hiện , nếu không có , nó cứ lội ngược dòng lên các lớp cha của nó và tìm .
Trả lời thế này ko biết có được không :D , với lại , theo tui thì cách bạn khai báo đa xạ thế này là ko ổn , chỉ nên có 1 lớp chính 1 phương thức ảo thôi , còn mấy lớp kia sẽ kế thừa lại , hoặc override nó . Chúc bạn vui :D

Tại không rành về nó nên chế đại cái ví dụ ấy mà, với lại đã thử qua nhiều trường hợp khác rồi, cái nào cũng vậy khi dùng hay không dùng virtual thì cũng ra kết quả như nhau hết:D
Chỉ có cái ví dụ này là ngoại lệ.

Dù sao cũng cám ơn anh briamlam và anh canh en buon đã tận tình giúp đỡ

Còn 2 bạn satthugiaumat1986 và Gaique9x định tranh luận nữa hả (đã cãi nhau hết mấy trang rồi mà chưa chịu sao), đang bàn luận về ngôn ngữ nào hay hơn à, vậy cứ cự tiếp đi:D
Kô rảnh mà cự với chị ấy nửa đâu, sự thật vẩn là sự thật thôi, C++ là hay nhất:D
 
@Arc Of Triumph : mình coi lại , thì ra cái này là bài tập tuần cho cái cây đỏ đen :D , nên việc ứng dụng lại là xài cây đỏ đen và index file + tí xíu hash nữa , bạn coi cái tài liệu tạm nhé http://www.mediafire.com/?9ngrznmvmlz
 
Chà lung tung vậy, thôi để down về nghiêm cứu thử xem
cám ơn nhe
 
file hỏng rồi, bung nén không được, phiền bác kiểm tra lại dùm em
Mà file đó có an toàn không vậy, sao từ lúc down về đến giờ máy em bắt đầu xuất hiện hiện tượng lạ...
 
Mình mới down về lại bằng link trên , bung ra đàng hoàng đâu có sao đâu bạn . Bạn hơi nghi ngờ quá á :D
 
cẩn thận chút thôi bởi vì khi down xong tự nhiên nó đá tôi ra ngoài rồi reset lại máy luôn, làm tôi cứ ngỡ...:D
với lại khi bung nén nó báo "the file is corrupt"

được rồi để ngày mai tôi down lại thử xem, chứ giờ này nó cũng đâu có cho down nữa đâu :cry:

giờ này phải đi ngủ thôi, chúc ngủ ngon I-|
 
Cách bác Brianlam chỉ cũng hay hay, nhưng khi làm thử thì...:cry:
trong java không có kiểu con trỏ:angel:

Đọc sách cả ngày rồi mà không thấy có chổ nào đề cập về vấn đề này, bây giờ em phải làm sao đây:-/???
 
Dể ợt, anh chuyển sang dùng C++ luôn đi, nói về con trỏ thỉ thằng nào mạnh hơn C nửa^^
 
::(, sao em trả lời giống như chưa trả lời vậy, nhưng thôi đấy cũng là ý kiến hay (sẵn tìm hiểu C luôn)
thank::)
 
Bạn cánh én buồn hay bạn nào có tài liệu học C không cho mình với , đang học C mà chả hiểu cái phần mảng với con trỏ , hàm nó như thế nào nữa . Lại còn sắp thi :(
Làm ơn
 
@V.T:chịu khó quay về mấy trang trước xem đi, mấy bác ấy có post 1 đống link down đấy
còn nếu mới biết về C thì down thử cái tài liệu ở trang 7 hay 8 gì đó giành cho người mới nhập môn, đọc cũng được lắm


@Brianlam: bác có biết làm sao nhúng SQL vào C ko
 
Nếu bạn đang dùng VC6 thì vào đây nhe , làm biếng chỉ lại quá hà
Còn nếu đang sử dụng VC2005 thì mọi việc rất đơn giản, bạn hãy thử dùng đối tượng System::Data:OleData::OleDcCommand, nó có thể thực hiện các lệnh SQL dưới dạng chuổi
Mình nghỉ chắc bạn đã làm ODBC trên java rồi, nên mình nói ngắn gọn vậy là được rồi^^

Chúc bạn thành công
 
Đã biết cách nhúng rồi, dù sao cũng cám ơn bác

mấy thằng ODBC này phiền thật
 
Sao dạo này topic hoặt động không được sôi nổi như lúc đầu nữa::(
Chắc tại đây là diễn đàn game nên ít người quan tâm đến lập trình

Thôi kệ vậy, bây giờ để góp vui em có 1 câu hỏi nho nhỏ

Trong C để truyền tham số ta có 3 cách:
+ Truyền bằng giá trị:
void moment(int a){
//write code
}

+ Truyền bằng tham khảo (địa chỉ): void moment(int &a){...}
+ Truyền bằng con trỏ: void moment(int *a){...}

Vậy sự khác nhau giữa 3 cách truyền đó là gì?
Và nếu ta khai báo như sau:
void moment(int *&a){...} là ta đang dùng cơ chế nào (truyền địa chỉ hay con trỏ???)
 
::(::(::(::(::(::(::(::(::(::(::(::(::(::(
Mấy anh trong đây đi đâu hết rồi???
Nếu không còn ai quan tâm đến topic này nửa chắc em cũng...

@canh en buon: anh có nick nào bên ddth không, em thấy bên ấy hoặt động có phần sôi nổi hơn
 
Tình hình là em đang gặp rắc rối trong PHP :D
cho em hỏi nếu muốn tìm kiếm 1 chuỗi và thay thế nó trong 1 file, vd như: config.php có nội dung như sau:

Mã:
<?php
$show_des = "on";
$show_com = "on";
$com_op = "off";
?>

Bi giờ em muốn thay thế $show_des = "on" bằng $show_des = "off" thì phải làm thế nào (sử dụng lệnh php ná ) :D
cảm ơn các bác
 
Trong C để truyền tham số ta có 3 cách:
+ Truyền bằng giá trị:
void moment(int a){
//write code
}

+ Truyền bằng tham khảo (địa chỉ): void moment(int &a){...}
+ Truyền bằng con trỏ: void moment(int *a){...}

Vậy sự khác nhau giữa 3 cách truyền đó là gì?
Và nếu ta khai báo như sau:
void moment(int *&a){...} là ta đang dùng cơ chế nào (truyền địa chỉ hay con trỏ???)
Cái cách truyền cuối thì thiệt sự bạn nghĩ sao khi viết thế :D .
Theo mình hen , nếu mà hiểu cáu cách truyền của bạn sẽ là giá trị của con trỏ đấy , hehe .
Vì với cái kiến thức cùi bắp của mình thì mình đã rút ra được 1 vài cái như sau : (chả biết đúng sai luôn)
Khi mình truyền với & , địa chỉ , thì lúc này mình đang dùng 1 con trỏ , trỏ đến ngay cái địa chỉ của thằng đó luôn
Còn nếu không có thì chỉ là liên quan đến giá trị thạm thời của nó .
Và theo nhớ hồi đó học thì 2 cách truyền có 1 không có & gọi là tham biến và tham trị.
Và cái đặc điểm của thằng tham biến là khi bạn thay đổi nó , ra khỏi hàm giá trị nó sẽ thay đổi theo , còn thằng kia thì không , hồi đó có làm 1 cái project dính tới cái này .
Còn vì sao mình nói cái cuối là giá trị của con trỏ thì : *&a , trong đó &a sẽ là con trỏ , trỏ đến địa chỉ cần truy xuất , còn * sẽ lấy giá trị tại địa chỉ đó .
Hên xui , chúc vui , hehe:D
 
Sao dạo này topic hoặt động không được sôi nổi như lúc đầu nữa::(
Chắc tại đây là diễn đàn game nên ít người quan tâm đến lập trình

Thôi kệ vậy, bây giờ để góp vui em có 1 câu hỏi nho nhỏ

Trong C để truyền tham số ta có 3 cách:
+ Truyền bằng giá trị:
void moment(int a){
//write code
}

+ Truyền bằng tham khảo (địa chỉ): void moment(int &a){...}
+ Truyền bằng con trỏ: void moment(int *a){...}

Vậy sự khác nhau giữa 3 cách truyền đó là gì?
Và nếu ta khai báo như sau:
void moment(int *&a){...} là ta đang dùng cơ chế nào (truyền địa chỉ hay con trỏ???)
Theo mình được biết thì có 2 cách truyền thôi tham trị hoặc tham khảo, còn truyền con trỏ chỉ là trường hợp đặc biệt của truyền tham trị (thay vì truyền giá trị thì ta truyền địa chỉ đang chứa trong con trỏ)

Còn khai báo cuối cùng của bạn, mình nghỉ là truyền tham khảo, tức là truyền địa chỉ của biến con trỏ vào, nếu bạn thay đổi giá trị của biến con trỏ trong hàm thì khi ra khỏi hàm nó cũng thay đổi theo
(chỉ đoán thôi, không chắc lắm:p, bạn đánh vào rồi chạy thử xem)
::(::(::(::(::(::(::(::(::(::(::(::(::(::(
Mấy anh trong đây đi đâu hết rồi???
Nếu không còn ai quan tâm đến topic này nửa chắc em cũng...
Tại dạo này ít người post câu hỏi nên mình cũng ít vào đây
@canh en buon: anh có nick nào bên ddth không, em thấy bên ấy hoặt động có phần sôi nổi hơn
Có, bạn qua các diển đàn khác cứ thấy cái nick nào có chữ én là biết nick của mình (thực ra bên ấy mới là sân chơi chính của mình:D)

Tình hình là em đang gặp rắc rối trong PHP :D
cho em hỏi nếu muốn tìm kiếm 1 chuỗi và thay thế nó trong 1 file, vd như: config.php có nội dung như sau:

Mã:
<?php
$show_des = "on";
$show_com = "on";
$com_op = "off";
?>

Bi giờ em muốn thay thế $show_des = "on" bằng $show_des = "off" thì phải làm thế nào (sử dụng lệnh php ná ) :D
cảm ơn các bác

Sorry nha, không rành về PHP nên không biết
Câu hỏi này bạn nên đem ra ngoài đi, dạo này topic gần như ngưng trệ, các mem thì bỏ đi qua các box khác hết rồi nên :cry:
 
}[/I]
void moment(int *&a){...} là ta đang dùng cơ chế nào (truyền địa chỉ hay con trỏ???)

Cái này theo mình hiểu thì bạn truyền con trỏ a cho hàm theo kiểu tham chiếu (chính là địa chỉ của con trỏ a),do đó mình có thể thay đổi nội dung mà con trỏ a này chứa...Cái này tổ chức của mình gọi là tham biến:>
 
Back
Top