Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 15 kết quả

Đề tài: Hỏi về thuật toán và ứng dụng của nó

  1. #1
    Ngày gia nhập
    08 2008
    Bài viết
    5

    Question Hỏi về thuật toán và ứng dụng của nó

    Xin chào mọi người, mình hiện đang rất thắc mắc về ứng dụng cụ thể của những thuật toán trong lập trình ứng dụng. Mình không được học ĐH/CĐ (do thi rớt) nên không làm cách nào hiểu được hết những thuật toán dạng đồ thị, nội suy, vi phân... Mình chỉ có thể tạm đọc hiểu code của những ứng dụng đơn giản và cao lắm thì cũng chỉ đến các phương pháp sorting, searching, binary tree là dừng bước. Các bài thuộc về vi phân, hàm số, đồ thị, phi tuyến thì mình chịu thua hoàn toàn

    Vấn đề mình rất lo là nếu mai này làm lập trình viên thì các vấn đề trên có phải là trở ngại chính không? Mình có đọc qua nhiều bài trong mục đào tạo và kinh nghiệm của congdongcviet.com và rất tâm đắc là phải học từ đầu, học cho kĩ mà mình thì không hiểu hết cơ bản thì đào đâu ra thuật toán để giải đây Mình đã nghĩ tới cách học chui ở giảng đường nhưng xem ra không khả thi :(

    Và một thắc mắc nữa là mình định theo hướng lập trình ứng dụng, vậy thì các thuật toán đồ thị, ma trận, vi phân... có được bỏ qua hay không? Bởi lẽ theo mình thì các ứng dụng (nhỏ và vừa) trên thị trường xem ra thuật toán của chúng không liên quan nhiều đến Toán (cao cấp). Phải chăng những thuật toán để giải Toán (cao cấp) chỉ dùng để nâng cao tư duy và ít khi áp dụng cho ứng dụng thực tế? Mình thấy đa phần các ứng dụng trong mục "Sản phẩm của bạn..." trong congdongcviet thì theo mình thuật toán ít phụ thuộc vào trình độ Toán (cao cấp) của tác giả. Có lẽ họ chỉ nảy ra ý tưởng, viết ra giấy, sắp xếp ý tưởng rồi code chứ không áp dụng những ma trận, vi phân này nọ vào... Dĩ nhiên mình không bàn tới những chương trình đồ sộ hoặc thiên về đồ họa đòi hỏi tính toán cao (lập trình game, 3D chẳng hạn).

    Câu hỏi cuối là trong thời kì công nghệ thay đổi nhanh như gió hiện nay, mình có cần phải học thuộc tất cả những thuật toán hay không khi xin việc? Hay ví dụ chỉ cần dùng hàm qsort()...trong C# mà không cần viết lại nguyên hàm? Mình hiểu thuật toán nhưng không dùng thì sẽ không nhớ mà thực tế trong công việc mình nghĩ ít khi đụng đến thuật toán, do đó không biết nên làm gì với đống thuật toán đang ngâm cứu nữa - tiếp tục đào sâu hay dừng ở mức căn bản đây? Ví dụ như chương trình quản lý hồ sơ, nhân sự thì mình chưa hình dung được những thuật toán đồ sộ khó hiểu của Toán cao cấp giải quyết được gì trong chương trình đó nữa

    Hiện mình đang rất bối rối giữa việc tiếp tục nghiên cứu thuật toán (cho Toán cao cấp) hay chuyển sang C# (dùng sẵn những hàm đã viết) để đi làm kiếm cơm đây Mong mọi người cho ý kiến.

    Mình chân thành cảm ơn tất cả
    Heo lập trình

  2. #2
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,917

    - Thuật toán quan trọng nhưng trong lập trình thì viết code nhiều cũng quan trọng. Nhiều người rất dở giải thuật chỉ nắm căn bản vẫn có thể làm việc được ầm ầm do họ làm quen và có nhiều kinh nghiệm. Thuật toán nếu giỏi thì viết code sáng hơn, nhanh hơn và tất nhiên hiệu quả hơn rất nhiều nhưng không cần phải xuất sắc mới trở thành lập trình viên được vì đa phần mấy cao thủ giải thuật toàn là dân cội toán học và học lập trình từ khi lên 6 lên 7 không à. Cậu cũng đừng nhìn vào đó mà tự ti. Cậu cứ học hết sức là được.
    - Còn ứng dụng thì 1 nhiều lắm, hầu như code nào mà chẳng có giải thuật, nhỏ to lớn bé là tùy thôi. Với lại học thuật toán nó đốt thời gian gấp trăm lần học programming T_T.
    - Và nếu cậu rành các thuật toán cơ bản thì tui nghĩ cậu viết code sẽ nhanh hơn nhiều và design cũng tốt hơn nhiều, hình như cứ mỗi lần quay lại học giải thuật vài tuần thì quay lại tui viết code nó nhanh hơn 1 tí T_T( không biết có đúng như vậy không nhưng tui thấy nó lại đúng với tui ) .
    - Nếu cậu muốn học thì tìm đọc 2 bộ sách này :
    1. Algorithm in C++ ( 4 tập ) của Robert Sedgewick
    2. Art of computer programming của Donald E. Knuth. ( 4 tập )
    Tất nhiên đọc hiểu 2 bộ này tối thiểu chắc cũng phải vài năm, và tất nhiên sách đọc không dễ như đọc sách công nghệ đâu. Nhưng nếu cậu thực sự thích thì cậu sẽ được thôi. Chúc cậu may mắn !

  3. #3
    Ngày gia nhập
    09 2007
    Bài viết
    724

    Chào bạn.
    Mình chưa đi làm như theo mình nếu bạn thiên về làm web, làm các ứng dụng quản lý thì cái bạn cần là tư duy logic và cơ sở dữ liệu(tất nhiên ngôn ngữ lập trình mình không đề cập ở đây vì nếu làm coder mà ngôn ngữ yếu thì không bàn gì nữa).
    2- theo như mình thì thuật toán rất quan trọng, nó sẽ giúp bạn làm việc tốt hơn. và trên đời này không ai là hoàn hảo cả nên nhiều vấn đề bạn chưa biết là chuyện bình thường thôi phải không bạn. nên khi đi làm đụng tới giải thuật thì bạn chỉ cần google và hô biến. là nó list ra cho bạn một đống. chỉ cần các từ khóa liên quan tới nó thôi.

    mình nói như vậy không có nghĩa là chối bỏ sự quan trọng của thuật toán. mà chỉ muốn nói với bạn rằng thuật toán quan trọng đó nhưng nó không phải là tất cả. Nếu bạn không làm game, làm nhúng, làm các lĩnh vực về AI, khoa học máy tính thì bạn có thể làm mọi việc nếu như bạn code tốt.

    chúc bạn thành công.

  4. #4
    Ngày gia nhập
    08 2008
    Bài viết
    5

    Mình chân thành cám ơn ý kiến của rox_rook và zkday2686, đúng là mình rất tự ti khi thấy mọi người ai cũng biết hết còn mình chẳng biết gì. Quả thật có lẽ họ đã bỏ rất nhiều công sức để được như vậy còn mình thì chỉ ngồi than thân trách phận mà không bắt tay vào nỗ lực học tập nhiều hơn để bằng và hơn họ. Phải năng vào congdongcviet hơn mới được

    Cám ơn những lời động viên của các bạn, cám ơn congdongcviet, cám ơn mọi người rất nhiều
    Heo lập trình

  5. #5
    Ngày gia nhập
    10 2007
    Bài viết
    3

    Bạn có thể tham khảo thêm ở quyển : Toán Rời Rạc - ứng dụng trong tin học .

    Nếu khá tiếng anh thì có thể đọc : Data Structure and Algorithm in Java : quyển này chỉ nên quan tâm tới Algorithm(Thuật Toán) thôi.

  6. #6
    Ngày gia nhập
    07 2008
    Bài viết
    21

    Mặc định Hỏi về thuật toán và ứng dụng của nó

    Trích dẫn Nguyên bản được gửi bởi rox_rook Xem bài viết
    - Thuật toán quan trọng nhưng trong lập trình thì viết code nhiều cũng quan trọng. Nhiều người rất dở giải thuật chỉ nắm căn bản vẫn có thể làm việc được ầm ầm do họ làm quen và có nhiều kinh nghiệm. Thuật toán nếu giỏi thì viết code sáng hơn, nhanh hơn và tất nhiên hiệu quả hơn rất nhiều nhưng không cần phải xuất sắc mới trở thành lập trình viên được vì đa phần mấy cao thủ giải thuật toàn là dân cội toán học và học lập trình từ khi lên 6 lên 7 không à. Cậu cũng đừng nhìn vào đó mà tự ti. Cậu cứ học hết sức là được.
    - Còn ứng dụng thì 1 nhiều lắm, hầu như code nào mà chẳng có giải thuật, nhỏ to lớn bé là tùy thôi. Với lại học thuật toán nó đốt thời gian gấp trăm lần học programming T_T.
    - Và nếu cậu rành các thuật toán cơ bản thì tui nghĩ cậu viết code sẽ nhanh hơn nhiều và design cũng tốt hơn nhiều, hình như cứ mỗi lần quay lại học giải thuật vài tuần thì quay lại tui viết code nó nhanh hơn 1 tí T_T( không biết có đúng như vậy không nhưng tui thấy nó lại đúng với tui ) .
    - Nếu cậu muốn học thì tìm đọc 2 bộ sách này :
    1. Algorithm in C++ ( 4 tập ) của Robert Sedgewick
    2. Art of computer programming của Donald E. Knuth. ( 4 tập )
    Tất nhiên đọc hiểu 2 bộ này tối thiểu chắc cũng phải vài năm, và tất nhiên sách đọc không dễ như đọc sách công nghệ đâu. Nhưng nếu cậu thực sự thích thì cậu sẽ được thôi. Chúc cậu may mắn !
    mình là dân toán học chính gốc
    vậy mình có lợi thế gì không?
    (mình dân toán nhưng theo tin lại mới học C nên kòn lơ mơ lắm)

  7. #7
    Ngày gia nhập
    04 2008
    Bài viết
    336

    vd nhé: bài xác định số n có phải là số nguyên tố không với người bình thường họ cho chạy từ 2->n còn bạn là dân toán nên sẽ chỉ cho chạy tới sqrt(n), vì toán học đã chứng minh như vậy v.v....
    code ra gió bão

  8. #8
    Ngày gia nhập
    07 2008
    Bài viết
    21

    nhưng cái đó không phải chỉ dân toán học mới biết
    đó không phải là lợi thế
    kòn cái gì khác to lớn hơn không?

  9. #9
    Ngày gia nhập
    02 2008
    Bài viết
    88

    Trích dẫn Nguyên bản được gửi bởi RedHatLinux9 Xem bài viết
    nhưng cái đó không phải chỉ dân toán học mới biết
    đó không phải là lợi thế
    kòn cái gì khác to lớn hơn không?
    Lợi thế của dân toán học là biết được các định luật toán học có khả năng áp dụng như cái số nguyên tố kia và khả năng tư duy tốt thôi.
    Theo mình như thế là đã quá nhiều rồi.
    Mình từ Caulacbovb qua)
    Giã từ VB6 đến với VB.Net, C# và Java.

  10. #10
    Ngày gia nhập
    02 2008
    Bài viết
    1,009

    http://forums.congdongcviet.com/showthread.php?t=9055
    cậu thử xem bài này nếu không có toán thì sẽ khó biết chừng nào

Các đề tài tương tự

  1. Dịch thuật, công ty dịch thuật, dịch vụ dịch thuật chuyên nghiệp
    Gửi bởi vecvn trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 4
    Bài viết cuối: 18-11-2012, 10:44 PM
  2. Dịch vụ kế toán: Báo cáo thuế, dịch vụ tư vấn thuế, báo cáo thuế tncn vnnp
    Gửi bởi ecomvnnp01 trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 1
    Bài viết cuối: 16-02-2012, 11:07 AM
  3. Bài tập C++ Viết chương trình nhập số lượng hàng hóa, giá cả, thuế, xuất ra tổng giá, thuế, tổng cộng
    Gửi bởi seit trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 1
    Bài viết cuối: 04-03-2011, 09:04 AM
  4. Hướng dẫn kê khai thuế thu nhập cá nhân, thuế doanh nghiệp 0903034381
    Gửi bởi thngxanhcty trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 19-05-2010, 02:33 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn