JavaRush /جاوا بلاگ /Random-UR /کتاب کا جائزہ: "جاوا ڈیٹا سٹرکچرز اینڈ الگورتھم"، رابرٹ ل...

کتاب کا جائزہ: "جاوا ڈیٹا سٹرکچرز اینڈ الگورتھم"، رابرٹ لافورٹ

گروپ میں شائع ہوا۔
ہر پروگرامر کی طاقت اس کے علم میں ہے۔ جی ہاں، اچھی طرح سے گوگل کرنے کی صلاحیت بھی آخری جگہ پر نہیں ہے، لیکن اس کے باوجود، علم کی ایک خاص مقدار ہونی چاہیے، جس کی بنیاد پر ڈویلپر کا سوچنے کا طریقہ بنتا ہے۔ یہ علم جتنا گہرا ہوگا، پروگرامر اتنے ہی دلچسپ حل نکال سکتا ہے۔ کتاب کا جائزہ: "جاوا ڈیٹا سٹرکچرز اور الگورتھم"، رابرٹ لافورٹ - 1اس طرح کے "بیس" کے حصوں میں سے ایک ڈیٹا ڈھانچے اور الگورتھم ہیں۔ آپ اس سمت میں اپنے علم کو کیسے بڑھا سکتے ہیں؟ ایک آپشن کے طور پر، ایک کتاب تلاش کریں، جس سے علم ایک فائر پروف ریزرو اور مزید مطالعہ کی بنیاد بن جائے۔ میرے لیے ایسی کتاب تھی "جاوا ڈیٹا سٹرکچرز اینڈ الگورتھم" رابرٹ لافورٹ کی طرف سے ۔کتاب کا جائزہ: "جاوا ڈیٹا سٹرکچرز اینڈ الگورتھم"، رابرٹ لافورٹ - 2

جن کے لئے

اس کتاب کے سامعین لوگوں کی ایک بہت وسیع رینج ہو سکتی ہے، کیونکہ یہ ان لوگوں کے لیے مفید ہو گی جنہوں نے ابھی جاوا زبان کے نحو میں مہارت حاصل کی ہے، اور پریکٹس کرنے والے پروگرامرز کے لیے، ڈیٹا کے ڈھانچے اور الگورتھم کی خصوصیات کی گہری تفہیم کے لیے۔ .

کس بارے میں

یہ کتاب پروگرامنگ میں ڈیٹا ڈھانچے اور الگورتھم کے مطالعہ اور استعمال کے لیے وقف ہے۔ یہ قاری کو سکھائے گا کہ ڈیٹا کے ڈھانچے کیسے طے کرتے ہیں کہ میموری میں ڈیٹا کو کس طرح منظم کیا جاتا ہے، اور کس طرح الگورتھم ان ڈھانچوں پر مختلف کام انجام دیتے ہیں۔ آئیے تھوڑا گہرائی میں کھودیں اور دیکھیں کہ یہ کتاب بالکل کس چیز کے بارے میں ہے:
  1. صفیں ارے میں داخل کریں، تلاش کریں، اور حذف کریں آپریشنز اور ترتیب شدہ صفوں کا تفصیل سے احاطہ کیا گیا ہے۔ ترتیب شدہ اور غیر ترتیب شدہ صفوں کے لیے لکیری اور بائنری تلاش کے آپریشن کو ظاہر کرتا ہے۔ آپ یہ بھی سیکھیں گے کہ O-Syntax کیا ہے۔
  2. چھانٹنا۔ چھانٹنے کے تین آسان طریقوں پر غور کیا جاتا ہے: "بلبلا چھانٹ"، "سلیکشن کی ترتیب"، "انسرشن کی ترتیب"۔ کتاب سے آپ سیکھیں گے کہ کون سا سست ہے اور کون سا آسان ہے۔
  3. ڈھیر اور قطار۔ ڈیٹا ڈھانچے جیسے اسٹیک، قطار اور ترجیحی قطار، ان کی تاثیر، اور جاوا میں نفاذ پر غور کیا جاتا ہے۔
  4. منسلک فہرستیں۔ کتاب دوگنا منسلک اور دوہری منسلک فہرستوں، ان کی کارکردگی، اور کیسے اندراج، تلاش، اور حذف کرنے کی کارروائیوں کو انجام دیتی ہے کے بارے میں بات کرتی ہے۔ تکرار کرنے والے اور انہیں کن طریقوں کی ضرورت ہوتی ہے اس کا بھی احاطہ کیا گیا ہے۔
  5. تکرار تکرار کو مختلف حالتوں میں سمجھا جاتا ہے، جیسے: مثلث نمبروں اور فیکٹریل کا حساب لگانا، ایناگرامس بنانا، ریکسریو بائنری سرچ کرنا، ٹاور آف ہنوئی پہیلی کو حل کرنا، انضمام کی ترتیب کو نافذ کرنا، نیپ سیک کا مسئلہ حل کرنا۔
  6. غیر معمولی چھانٹیاں۔ مزید جدید طریقوں پر غور کیا جاتا ہے: شیل ترتیب، فوری ترتیب اور ریڈکس ترتیب، ان کے الگورتھم، کارکردگی۔
  7. بائنری درخت۔ متوازن بائنری تلاش کے درختوں پر غور کیا جاتا ہے، وہ کیسے کام کرتے ہیں، ان کے اندراج اور حذف کرنے کے عمل، مختلف قسم کے ٹراورسل، کم از کم اور زیادہ سے زیادہ کی تلاش، جانشین کی تلاش۔ ہف مین کوڈ کا بھی احاطہ کیا جائے گا۔
  8. سرخ اور سیاہ درخت۔ ہم متوازن درختوں کی سب سے مؤثر اقسام میں سے ایک پر غور کرتے ہیں، توازن کے لیے ان کی گردش اور رنگ بدلنے کے عمل کو ضروری ہے۔
  9. درخت 2-3-4۔ اس قسم کے درختوں کو ملٹی پاتھ درختوں کی ایک مثال کے طور پر بیان کیا گیا ہے؛ ان کے آپریشن اور B-trees کے ساتھ تعلق، جو بیرونی ڈیٹا ذخیرہ کرنے کے لیے استعمال ہوتے ہیں، زیر بحث آئے ہیں۔
  10. ہیش ٹیبلز۔ ہیشنگ اور اس کے مختلف طریقوں کا احاطہ کیا گیا ہے، جیسے لکیری اور چوکور تحقیقات، ڈبل ہیشنگ اور چیننگ کا طریقہ۔ آپ یہ بھی جان سکتے ہیں کہ کس طرح ہیشنگ کو بیرونی فائل اسٹوریج کو منظم کرنے کے لیے استعمال کیا جا سکتا ہے۔
  11. اہرام یہ ایک خاص قسم کا درخت ہے جو ترجیحی قطاروں کو مؤثر طریقے سے نافذ کرنے کے لیے استعمال ہوتا ہے۔ کتاب داخل کرنے، حذف کرنے اور دوبارہ ترتیب دینے کے عمل کے طریقہ کار پر بحث کرتی ہے۔ آپ یہ بھی سیکھیں گے کہ اہرام کی ترتیب کیا ہے اور اسے جاوا میں کیسے لاگو کیا جا سکتا ہے۔
  12. گرافس۔ وزنی اور غیر وزنی گراف، ان کے ذریعے تلاش کرنے کے لیے الگورتھم، اور مختصر ترین ٹراورسل راستے تلاش کرنے کے لیے استعمال کیے جانے والے الگورتھم پیش کیے گئے ہیں۔
زیادہ وضاحت کے لیے، ہر باب زیر بحث ڈیٹا ڈھانچے کا اپنا نفاذ فراہم کرتا ہے۔ مثال کے طور پر، اگر یہ اکیلے منسلک فہرست ہے، تو اس کلاس کی مثال دی جائے گی جو بیان کردہ فعالیت کو نافذ کرتی ہے۔ کتاب کا آخری باب، پچھلے ابواب سے حاصل کردہ علم کی بنیاد پر تمام علم کو ایک تصویر میں جمع کرنا شروع کرتا ہے۔ مثال کے طور پر، آپ واضح طور پر اس بات کا اندازہ لگا سکیں گے کہ ڈیٹا ڈھانچہ کس صورتحال میں استعمال کرنا ہے: کتاب کا جائزہ: "جاوا ڈیٹا سٹرکچرز اینڈ الگورتھم"، رابرٹ لافورٹ - 3ہر باب کے آخر میں چھوٹی چھوٹی مشقیں بھی ہیں۔ ان میں سے کچھ ورکشاپ ایپ کے ساتھ کام کرنا شامل ہیں ، جبکہ دیگر آپ کو چھوٹے کام براہ راست کوڈ میں دیتے ہیں۔

ورکشاپ ایپس کیا ہیں؟

ورکشاپ ایپلی کیشنز کو ان ڈھانچے اور الگورتھم کو ظاہر کرنے کے لیے استعمال کیا جاتا ہے ۔ ایپلی کیشنز کو جاوا ایپلٹ کے طور پر ڈیزائن کیا گیا ہے جو براؤزر میں چلایا جا سکتا ہے۔ ورکشاپ ایپلی کیشنز گرافیکل ڈایاگرام بناتے ہیں جو ظاہر کرتے ہیں کہ الگورتھم یا ڈیٹا ڈھانچہ کیسے کام کرتا ہے۔ مثال کے طور پر، ایک ایپلیکیشن میں جو کالموں کو صعودی ترتیب میں ترتیب دینے کے لیے ڈیزائن کیا گیا ہے، ہر بار جب آپ ہسٹوگرام کے بٹن پر کلک کریں گے، اگلا مرحلہ انجام دیا جائے گا۔ اس صورت میں، اس الگورتھم میں شامل متغیرات کی قدروں کو ظاہر کیا جائے گا تاکہ آپ دیکھ سکیں کہ کوڈ کو کیسے عمل میں لایا جاتا ہے ( ڈیبگر کی تفصیل کی یاد دلانے والا ، ٹھیک ہے؟)

ورکشاپ کو ڈاؤن لوڈ اور انسٹال کرنے کا طریقہ

  1. آپ ایپلٹس کو یہاں سے ڈاؤن لوڈ کر سکتے ہیں ۔ Рецензия на книгу: «Структуры данных и алгоритмы Java», Роберт Лафоре - 4
  2. WorkshopApplets.ZIP پر کلک کریں اور ایپلٹس کے ساتھ آرکائیو ڈاؤن لوڈ کریں۔
  3. ایپلٹس کو سمجھنے کے لیے، آپ اس موضوع اور اس پر تبصرے پڑھ سکتے ہیں۔

کتاب کے فوائد

  • پڑھنے میں بہت آسان، بہت سی مثالیں تقریباً "آپ کی انگلیوں پر" بیان کی جاتی ہیں۔
  • پیچیدہ ریاضیاتی فارمولوں کے استعمال کے بغیر آپ کی آنکھیں بہت سی "کلاسیکی" چیزوں پر کھولتا ہے۔ ٹھیک ہے، تقریبا ان کے بغیر :)
  • اگرچہ مثالیں جاوا میں ہیں، لیکن کوڈ میں ہونے والے اعمال کو کوڈ میں درج ذیل متن اور تبصروں کے ذریعے بڑی تفصیل سے بیان کیا گیا ہے۔ لہذا، اسے کسی بھی پروگرامنگ زبان کا صارف پڑھ سکتا ہے، کیونکہ کوڈ کی مثالیں کافی آسان ہیں: وہ تقریباً سیوڈوکوڈ کی طرح پڑھتے ہیں۔

کتاب کے نقصانات

  • "انگلیوں پر" وضاحت کے باوجود اس میں خلاء موجود ہیں۔ صفوں کی چھانٹی کی وضاحت کرنے کے لیے، مصنف نے فٹ بال ٹیم کی تصویر کھینچی ہے، لیکن شیل چھانٹی کو عملی طور پر وہاں بیان نہیں کیا گیا ہے: میں اسے سمجھ نہیں سکا اور انٹرنیٹ پر اس کے بارے میں پڑھ سکتا ہوں۔
  • ٹائپنگ کی غلطیاں ہو سکتی ہیں، عام طور پر تصاویر یا ٹیبلز میں؛
  • کچھ کوڈ کافی پرانا ہے۔

اینالاگس

میں اس کتاب یا اس کی پیروی کرنے والوں (ان کے لیے جو مطالعہ جاری رکھنا چاہتے ہیں) کے اینالاگس تجویز کرتا ہوں:
  • "جاوا میں الگورتھم" بذریعہ رابرٹ سیڈگوک؛
  • "الگورتھمز: تعمیر اور تجزیہ" بذریعہ تھامس کورمین۔

نیچے کی لکیر

کتاب میں کچھ نقصانات ہیں، لہذا یہ واقعی پڑھنے کے قابل ہے۔ یہ واضح طور پر بہت سے بنیادی، بنیادی موضوعات کی وضاحت کرتا ہے، جیسے کہ مختلف قسمیں، صفیں، درخت، مجموعہ، گراف وغیرہ۔ چونکہ کتاب جاوا سے مضبوطی سے جڑی ہوئی نہیں ہے ، اس لیے اس کے مطالعہ سے حاصل کردہ علمی بنیاد دیگر پروگرامنگ زبانوں میں کارآمد ہوگی۔ ہونا چاہیے، ضرور پڑھیں - اگر آپ ڈویلپر ہیں۔Рецензия на книгу: «Структуры данных и алгоритмы Java», Роберт Лафоре - 6
تبصرے
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION