#44735844 · 29 May 2015, 15:53 · · პროფილი · პირადი მიმოწერა · ჩატი
აეე თუ იცით კითხვაზე პასუხი დაწერეთ რა, თუ არადა რა ლექციებს კითხულობთ, რამე ფილოსოფიური შეკითხვა დაისვა? პროგრამისტი მითხარით რომელსაც ფორუმზე კითხვა არ დაუსვამს და დახმარება არ უთხოვია.
fan1991, თუ კიდე გაინტერესებს ამ კითხვაზე პასუხი:
გააკეთე სტრუქტურა სიტყვაზე node, ამ სტრუქტურაში გააკეტე რაიმე ჩარ მასივი, (char name[...]), რომელიც ფაილიდან ამოკიტხულ node-ს სახელს ჩაიწერს. ამავე სტრუკტურაშივე შეგიძლია გააკეტო სტრუქტურაზე ორმაგი მიმთითებელი, რომელსაც სტრუქტურის გარედან დასვამ malloc-ზე ან calloc-ზე, მაგალითად ასე struct node **succ; <- ეს გექნება სტრუქტურაში, და სტრუქტურის გარეთ დასვი მალლოკზე. (თუ გრაფის ზომა წინასწარ არ იცი მერე შეგიძლია რეალლოკ-ით ზომა გაზარდო). შემდეგ უკვე შეგიძლია პარსერი დაუწერო გრაფს. ამოიკითხო გრაფი, და თითოეული ამოკითხული node-სთვის შექმნა სტრუქტურა, ამავდროულად შეგიძლია succ-ზე, successor-ები ჩაიწერო. პარსერი მუშაობას რომ დაამთავრებს, შენ უკვე გექნება ერთგვარი linkedList. successor-ების რაოდენობა რომ დათვალო შეგიძლია სტრუქტურის შაბლონში რაიმე მთვლელიც დაამატო, და succ-ს გაირბენ რომელიმე ციკლით და მთვლელს გაზრდი. ამიტ მიიღებ იმას, რომ ბოლოს შენ გექნება node-ების linkedList. თითოეულ node-s ექნება თავისი სახელი, თავისი successor-ების ლისტი და ასევე დამახსოვრებული ექნება successor-ების რაოდენობა.
|