প্রশ্ন ট্যাগ «tail-recursion»

টেল রিকার্সন একটি পুনরাবৃত্ত কৌশল যা একটি ফাংশন কিছু পরিমাণ কাজ করে, তারপরে নিজেকে অনুরোধ করে। "লেজ" বলতে বোঝায় যে পুনরাবৃত্তি ফাংশনের একেবারে শেষে রয়েছে। অনেক - বিশেষত ক্রিয়ামূলক - প্রোগ্রামিং ভাষার সংকলকগুলি এই ধরণের কলগুলিকে পুনরাবৃত্তিতে রূপান্তর করতে পারে, যার অর্থ সমর্থিত ভাষাগুলিতে লেজ পুনরাবৃত্তি কলগুলির সংখ্যা নির্বিশেষে স্ট্যাক ওভারফ্লোয়ের ভয় ছাড়াই ব্যবহার করা যেতে পারে।


10
টেল কল অপ্টিমাইজেশন কী?
খুব সহজভাবে, টেল-কল অপ্টিমাইজেশন কী? আরও সুনির্দিষ্টভাবে বলা যায় যে কয়েকটি ছোট কোড স্নিপেটগুলি কোথায় এটি প্রয়োগ করা যেতে পারে, এবং কেন নয়, কেন তার ব্যাখ্যা দিয়ে?

19
স্কালায় আমি কীভাবে লুপ ভাঙব?
আমি কীভাবে একটি লুপ ছড়িয়ে দেব? var largest=0 for(i<-999 to 1 by -1) { for (j<-i to 1 by -1) { val product=i*j if (largest>product) // I want to break out here else if(product.toString.equals(product.toString.reverse)) largest=largest max product } } আমি কীভাবে লুপগুলির জন্য লেজ পুনরাবৃত্তিতে পরিণত করতে পারি? FOSDEM 2009 …

20
পুনরাবৃত্তি বোঝা [বন্ধ]
যেমনটি বর্তমানে দাঁড়িয়ে আছে, এই প্রশ্নটি আমাদের প্রশ্নোত্তর বিন্যাসের জন্য উপযুক্ত নয়। আমরা উত্তরগুলি তথ্য, তথ্যসূত্র বা দক্ষতার দ্বারা সমর্থন করা আশা করি তবে এই প্রশ্নটি সম্ভবত বিতর্ক, যুক্তি, পোলিং বা বর্ধিত আলোচনার জন্য অনুরোধ করবে। আপনি যদি মনে করেন যে এই প্রশ্নটি উন্নত এবং সম্ভবত পুনরায় খোলা যেতে পারে …

6
পাইথন লেজ পুনরাবৃত্তি অনুকূলিত করে?
আমার কাছে নিম্নোক্ত কোডের টুকরা রয়েছে যা নিম্নলিখিত ত্রুটির সাথে ব্যর্থ হয়: রানটাইময়েরর: সর্বাধিক পুনরাবৃত্তির গভীরতা অতিক্রম করেছে লেজ পুনরাবৃত্তি অপ্টিমাইজেশনের (টিসিও) অনুমতি দেওয়ার জন্য আমি এটি পুনরায় লেখার চেষ্টা করেছি। আমি বিশ্বাস করি যে টিসিও হয়ে থাকলে এই কোডটি সফল হওয়া উচিত ছিল should def trisum(n, csum): if n …

5
কোন, যদি কোন হয়, সি ++ সংকলকরা পুচ্ছ-পুনরাবৃত্তি অপ্টিমাইজেশন করবেন?
আমার কাছে মনে হয় এটি সি এবং সি ++ উভয় ক্ষেত্রেই লেজ-পুনরাবৃত্তি অপ্টিমাইজেশন করতে পুরোপুরি ভাল কাজ করবে, তবুও ডিবাগিংয়ের সময় আমি কখনই কোনও ফ্রেম স্ট্যাক দেখতে পাই না যা এই অপটিমাইজেশনকে নির্দেশ করে। এটি এক ধরণের ভাল, কারণ স্ট্যাকটি আমাকে বলে দেয় যে পুনরাবৃত্তি কত গভীর। যাইহোক, অপ্টিমাইজেশন পাশাপাশি …

8
পুচ্ছ পুনরাবৃত্তি ঠিক কীভাবে কাজ করে?
আমি প্রায় বুঝতে পারি যে টেল রিকার্সন কীভাবে কাজ করে এবং এর মধ্যে পার্থক্য এবং একটি সাধারণ পুনরাবৃত্তি। আমি কেবল বুঝতে পারি না কেন এটির ফেরতের ঠিকানা মনে রাখার জন্য স্ট্যাকের প্রয়োজন হয় না । // tail recursion int fac_times (int n, int acc) { if (n == 0) return …

6
টেল-কল পুনরাবৃত্তির জন্য। নেট / সি # অনুকূলিত হয় না কেন?
কোন ভাষাগুলির লেজ পুনরাবৃত্তি অনুকূলিত করে সে সম্পর্কে এই প্রশ্নটি পেয়েছি । কেন যখনই সম্ভব সি # লেজ পুনরাবৃত্তি অপ্টিমাইজ করে না? একটি কংক্রিট ক্ষেত্রে, কেন এই পদ্ধতিটি কোনও লুপে অনুকূলিত করা হয়নি ( ভিজ্যুয়াল স্টুডিও ২০০২ 32-বিট, যদি তা বিবেচনা করে তবে) ?: private static void Foo(int i) { …

5
জেভিএম কি টেল কল অপ্টিমাইজেশনকে আটকাতে পারে?
আমি এই প্রশ্নের এই উদ্ধৃতিটি দেখেছি: একটি ভাল কার্যকরী ভাষা কোনটির উপর একটি ওয়েব পরিষেবা তৈরি করতে হবে? বিশেষত স্কেল স্ব-পুনরাবৃত্তি ফাংশন ব্যতীত টেল-কল অপসারণকে সমর্থন করে না, যা আপনি যে ধরনের রচনা করতে পারেন তা সীমাবদ্ধ করে (এটি জেভিএমের মৌলিক সীমাবদ্ধতা)। এটা কি সত্য? যদি তা হয় তবে এই …

5
রুবি টেইল কল অপটিমাইজেশন সম্পাদন করে?
কার্যকরী ভাষাগুলি প্রচুর সমস্যা সমাধানের জন্য পুনরাবৃত্তি ব্যবহারের দিকে পরিচালিত করে এবং তাই তাদের মধ্যে অনেকে টেল কল অপটিমাইজেশন (টিসিও) সম্পাদন করে। টিসিও অন্য ফাংশন থেকে কল (বা নিজেই, যার ক্ষেত্রে এই বৈশিষ্ট্যটি টেল রিকার্সন ইলিমিনেশন নামে পরিচিত, এটি টিসিওর একটি উপসেট)) ফাংশনের শেষ ধাপ হিসাবে নতুন স্ট্যাক ফ্রেমের প্রয়োজন …

6
কোনও জাভাস্ক্রিপ্ট ইঞ্জিনগুলি টেল কল (টিসিও) অনুকূলিত হয়েছে?
আমার একটি লেজ রিকার্সিভ পাথফাইন্ডিং অ্যালগরিদম আছে যা আমি জাভাস্ক্রিপ্টে প্রয়োগ করেছি এবং জানতে চাই যে কোনও (সমস্ত?) ব্রাউজারগুলি সম্ভবত স্ট্যাক ওভারফ্লো ব্যতিক্রমগুলি পাবে।

4
হাস্কেলের কি লেজ-পুনরাবৃত্তির অপ্টিমাইজেশন রয়েছে?
আমি আজ ইউনিক্সে "টাইম" কমান্ডটি আবিষ্কার করেছি এবং ভেবেছিলাম যে আমি হ্যাস্কেলের লেজ-পুনরাবৃত্ত এবং স্বাভাবিক পুনরাবৃত্তির কার্যকারিতার মধ্যে রানটাইমগুলির মধ্যে পার্থক্য পরীক্ষা করতে এটি ব্যবহার করব। আমি নিম্নলিখিত ফাংশন লিখেছি: --tail recursive fac :: (Integral a) => a -> a fac x = fac' x 1 where fac' 1 y …

1
স্কালা বিড়াল / fs2 এ স্ট্যাক সুরক্ষা সম্পর্কে কীভাবে যুক্তিযুক্ত?
এখানে fs2 এর জন্য ডকুমেন্টেশন থেকে কোডের একটি অংশ রয়েছে । ফাংশন goপুনরাবৃত্তি। প্রশ্নটি হ'ল আমরা কীভাবে জানি যে এটি স্ট্যাক নিরাপদ কিনা এবং কোনও ফাংশন স্ট্যাক নিরাপদ থাকলে কীভাবে যুক্তিযুক্ত? import fs2._ // import fs2._ def tk[F[_],O](n: Long): Pipe[F,O,O] = { def go(s: Stream[F,O], n: Long): Pull[F,O,Unit] = { …
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.