খাঁটি কার্যকরী প্রোগ্রামিংয়ের দক্ষতা


397

নিখুঁত কার্যকরীভাবে অপরিহার্যভাবে বিরোধী হিসাবে কর্মসূচী তৈরি করার সময় (যেমন পার্শ্ব প্রতিক্রিয়াগুলি অনুমোদন দেওয়া) সবচেয়ে খারাপ সম্ভাব্য অ্যাসিম্পটোটিক মন্দা কী হতে পারে তা কি কেউ জানেন?

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


6
অত্যাবশ্যকভাবে প্রোগ্রামিংয়ের সময় যেমনটি যাই হোক না কেন।
আর মার্টিনহো ফার্নান্দেস

3
@jldupont: অবশ্যই একটি গণনার ফলাফল ফিরিয়ে আনতে। অনেক পার্শ্ব প্রতিক্রিয়া মুক্ত প্রোগ্রাম বিদ্যমান। তারা কেবল তাদের ইনপুটটিতে গণনা করা ছাড়া আর কিছুই করতে পারে না। তবে এটি এখনও কার্যকর।
জালফ

24
আমি আমার ফাংশনাল কোডটি খারাপভাবে লিখে এটি আপনার পছন্দ মতো খারাপ করতে পারি! * গ্রিন * আমি মনে করি আপনি যা জিজ্ঞাসা করছেন তা হ'ল "এমন কোনও সমস্যা আছে যার জন্য সর্বাধিক পরিচিত অ-ধ্বংসাত্মক অ্যালগরিদম সর্বাধিক পরিচিত ধ্বংসাত্মক অ্যালগরিদমের চেয়ে তাত্পর্যপূর্ণভাবে খারাপ, এবং যদি তাই হয় তবে কতটা?" ... এটি কি ঠিক? ?
itowlson

2
আপনার আগ্রহী ধীরগতির উদাহরণটি কী আপনি দিতে পারেন? আপনার প্রশ্নটি কিছুটা অস্পষ্ট।
পিটার পুনরুত্থান

5
একজন ব্যবহারকারী তার উত্তরটি মুছে ফেলেছে, তবে তিনি দাবি করেছেন যে 8-কুইন সমস্যার ক্রিয়ামূলক সংস্করণ এন = 13 এর জন্য এক মিনিটের মধ্যে চলেছিল He তিনি স্বীকার করেছেন যে এটি "খুব ভালভাবে লেখা হয়নি", তাই আমি আমার নিজের সংস্করণটি লেখার সিদ্ধান্ত নিয়েছি এফ # তে 8 রানী: পেস্টবিন . com / ffa8d4c4 । বলা বাহুল্য, আমার খাঁটি ফাংশন প্রোগ্রামটি এক সেকেন্ডের মধ্যে n = 20 গণনা করে।
জুলিয়েট

উত্তর:


531

পিপ্পেঞ্জার [১৯৯ 1996] এর মতে , লিস্প পদ্ধতির সাথে তুলনা করার সময় যা বিশুদ্ধভাবে কার্যকরী হয় (এবং কঠোর মূল্যায়ন শব্দার্থবিজ্ঞান রয়েছে, অলস নয়) যা তথ্যের পরিবর্তন করতে পারে , ও ( এন ) এ চলমান নাপিত লিস্পের জন্য রচিত একটি অ্যালগরিদম অনুবাদ করা যেতে পারে ও ( এন লগ এন ) সময়ে ( কেবলমাত্র পয়েন্টার ব্যবহার করে এলোমেলো অ্যাক্সেস মেমোরি অনুকরণের বিষয়ে বেন-আমরাম এবং গ্যালিল [1992] এর কাজের উপর ভিত্তি করে) খাঁটি লিস্পে একটি অ্যালগরিদমে to পিপ্পেঞ্জার এছাড়াও প্রতিষ্ঠিত করে যে এমন অ্যালগরিদম রয়েছে যার জন্য আপনি সবচেয়ে ভাল করতে পারেন; খাঁটি সিস্টেমে (( n লগ এন ) থাকা অপরিষ্কার সিস্টেমে ও ( এন ) সমস্যা রয়েছে ।

এই কাগজটি সম্পর্কে কয়েকটি কেভিয়েট তৈরি করা দরকার। সর্বাধিক তাৎপর্য হ'ল এটি হ্যাস্কেলের মতো অলস কার্যকরী ভাষাগুলি সম্বোধন করে না। পাখি, জোন্স এবং ডি মুর [ ১৯৯ 1997] প্রমাণ করেছেন যে পাইপেনজারের দ্বারা নির্মিত সমস্যাটি ও ( এন ) সময়ে একটি অলস কার্যকরী ভাষায় সমাধান করা যেতে পারে তবে তারা প্রতিষ্ঠা করে না (এবং যতদূর আমি জানি, কারও কাছে নেই) বা কোনও অলস কার্যকরী ভাষা মিউটেশনের ভাষা হিসাবে একই অ্যাসিপোটটিক চলমান সময়ে সমস্ত সমস্যার সমাধান করতে পারে না।

পিপ্পেঞ্জার দ্বারা নির্মিত সমস্যাটির প্রয়োজন result ( n লগ এন ) বিশেষত এই ফলাফলটি অর্জনের জন্য নির্মিত এবং এটি ব্যবহারিক, বাস্তব-বিশ্বের সমস্যার প্রতিনিধিত্বকারী নয়। সমস্যার উপর কয়েকটি বিধিনিষেধ রয়েছে যা কিছুটা অপ্রত্যাশিত, তবে কাজের প্রমাণের জন্য এটি প্রয়োজনীয়; বিশেষত, সমস্যার প্রয়োজন ভবিষ্যতের ইনপুট অ্যাক্সেস করতে না পেরে অন-লাইন ফলাফলগুলি গণনা করা এবং ইনপুটটি নির্দিষ্ট আকারের সেটের পরিবর্তে সম্ভাব্য পরমাণুর একটি আনবাউন্ডড সেট থেকে পরমাণুর অনুক্রমের সমন্বয়ে গঠিত। এবং কাগজটি কেবল রৈখিক চলমান সময়ের অপরিষ্কার অ্যালগরিদমের জন্য ফলাফল (নিম্ন সীমাবদ্ধ) প্রতিষ্ঠা করে; যে সমস্যার জন্য অধিক চলমান সময় প্রয়োজন, এটি অতিরিক্ত ও (লগ এন ) সম্ভব) লিনিয়ার সমস্যায় দেখা ফ্যাক্টর বেশি সময় চলার সাথে অ্যালগোরিদমের জন্য প্রয়োজনীয় অতিরিক্ত অপারেশন প্রক্রিয়ায় "শোষিত" হতে সক্ষম হতে পারে। এই স্পষ্টতা এবং উন্মুক্ত প্রশ্নগুলি বেন-আমরাম [1996] দ্বারা সংক্ষিপ্তভাবে অনুসন্ধান করা হয়েছে ।

অনুশীলনে, অনেক অ্যালগরিদমগুলি মিউটেবল ডেটা স্ট্রাকচার সহ কোনও ভাষার মতো একই দক্ষতার সাথে খাঁটি কার্যকরী ভাষায় প্রয়োগ করা যেতে পারে। বিশুদ্ধভাবে কার্যকরী ডেটা স্ট্রাকচারকে দক্ষতার সাথে প্রয়োগের জন্য কৌশলগুলির জন্য একটি ভাল রেফারেন্সের জন্য, ক্রিস ওকাসাকির "খাঁটি ফাংশনাল ডেটা স্ট্রাকচারস" [ওকাসাকি 1998] দেখুন (যা তাঁর থিসিসের [ওকাসাকি 1996] এর একটি প্রসারিত সংস্করণ )।

যে কেউ খাঁটি-কার্যকরী ডেটা স্ট্রাকচারগুলিতে অ্যালগরিদমগুলি প্রয়োগ করতে হবে তাকে ওকাসাকি পড়া উচিত। ভারসাম্যযুক্ত বাইনারি গাছের সাথে মিউটਟੇবেবল মেমোরি অনুকরণ করে আপনি অপারেশন প্রতি সর্বদা সবচেয়ে খারাপভাবে O (লগ এন ) মন্দা পেতে পারেন , তবে অনেক ক্ষেত্রে আপনি এর চেয়ে যথেষ্ট ভাল করতে পারেন এবং ওকাসাকী অনেকগুলি দরকারী কৌশলগুলি বর্ণনা করেছেন, এমওরাইজড কৌশলগুলি থেকে রিয়েল- সময়গুলি যা ক্রমবর্ধমানভাবে কাজ করে। বিশুদ্ধভাবে কার্যকরী ডেটা স্ট্রাকচারগুলির সাথে কাজ করা এবং বিশ্লেষণ করা কিছুটা কঠিন হতে পারে তবে তারা রেফারেন্সিয়াল স্বচ্ছতার মতো অনেক সুবিধা প্রদান করে যা সংকলক অপ্টিমাইজেশান, সমান্তরাল এবং বিতরণকৃত কম্পিউটিংয়ের ক্ষেত্রে এবং সংস্করণকরণ, পূর্বাবস্থা এবং রোলব্যাকের মতো বৈশিষ্ট্যগুলির বাস্তবায়নে সহায়ক।

আরও মনে রাখবেন যে এই সমস্তগুলি শুধুমাত্র অ্যাসিম্পটোটিক চলমান সময়গুলি নিয়ে আলোচনা করে। খাঁটিভাবে কার্যকরী ডেটা স্ট্রাকচার বাস্তবায়নের জন্য অনেক কৌশল তাদের অতিরিক্ত কাজ করার জন্য প্রয়োজনীয় হিসাবরক্ষণের কারণে এবং প্রশ্নে থাকা ভাষাটির প্রয়োগের বিবরণগুলির কারণে ধ্রুবক ফ্যাক্টর ধীরগতির একটি নির্দিষ্ট পরিমাণ দেয়। বিশুদ্ধভাবে কার্যকরী ডেটা স্ট্রাকচারের সুবিধাগুলি এই ধ্রুবক ফ্যাক্টর ধীরগতির চেয়ে বেশি হতে পারে, সুতরাং আপনাকে সমস্যার সমাধানের ভিত্তিতে সাধারণত বাণিজ্য করতে হবে make

তথ্যসূত্র


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

6
আইটলসন: আমি অবশ্যই স্বীকার করতে পারি যে আমি আপনার প্রশ্নের উত্তর দেওয়ার জন্য পিপ্পেঞ্জার পর্যাপ্ত পরিমাণে পড়িনি; এটি ওকাসাকির উদ্ধৃত একটি পিয়ার রিভিউ জার্নালে প্রকাশিত হয়েছিল এবং তার দাবিগুলি এই প্রশ্নের সাথে প্রাসঙ্গিক কিনা তা প্রমাণ করার জন্য আমি যথেষ্ট পরিমাণে পড়েছি, তবে তার প্রমাণটি বোঝার পক্ষে যথেষ্ট নয়। বাস্তব-জগতের পরিণতির জন্য যে তাত্ক্ষণিকভাবে গ্রহণ করব তা হ'ল ভারসাম্যযুক্ত বাইনারি গাছ ব্যবহার করে পরিবর্তিত মেমরির অনুকরণ করে কোনও ও ( এন ) অপরিষ্কার অ্যালগরিদমকে একটি ও ( এন লগ এন ) খাঁটি হিসাবে রূপান্তর করা তুচ্ছ । এমন সমস্যা রয়েছে যা এর চেয়ে ভাল করতে পারে না; আমি জানি না তারা নিখুঁত তাত্ত্বিক কিনা।
ব্রায়ান ক্যাম্পবেল

3
পিপ্পেঞ্জার ফলাফল দুটি গুরুত্বপূর্ণ অনুমান করে যা তার ব্যাপ্তি সীমাবদ্ধ করে: এটি "অন-লাইন" বা "প্রতিক্রিয়াশীল" গণনা (একক আউটপুটে সীমাবদ্ধ ইনপুটগুলির একটি গণনা ম্যাপের সাধারণ মডেল নয়) এবং "প্রতীকী" গণনা যেখানে ইনপুটগুলির ক্রম হয় তা বিবেচনা করে পরমাণু, যা কেবলমাত্র সমতার জন্য পরীক্ষা করা যেতে পারে (অর্থাত্ ইনপুটটির ব্যাখ্যাটি অত্যন্ত আদিম)।
ক্রিস কনওয়ে

2
খুব ভাল উত্তর; আমি যুক্ত করতে চাই যে নিখুঁত কার্যকরী ভাষাগুলির জন্য কম্পিউটিং জটিলতার জন্য কোনও সর্বজনীনভাবে মডেলের উপর একমত নয়, অপরিষ্কার বিশ্বে ইউনিট-ব্যয় র‌্যাম মেশিন তুলনামূলকভাবে মানসম্পন্ন (সুতরাং এটি জিনিসগুলির তুলনা আরও জটিল করে তোলে)। এছাড়াও নোট করুন যে খাঁটি / অশুদ্ধের মধ্যে একটি এলজি (এন) পার্থক্যটির উপরের সীমানাটি একটি নির্ভেজাল ভাষায় অ্যারেগুলির বাস্তবায়ন দেখে খুব সহজেই স্বজ্ঞাতভাবে ব্যাখ্যা করা যেতে পারে (এটি অপারেশন অনুযায়ী প্রতি কেজি (এন) খরচ করে (এবং আপনি ইতিহাস পান)) ।
ব্যবহারকারীর 151568

4
গুরুত্বপূর্ণ বিষয়: আপনি যদি অবশেষে - স্বয়ংক্রিয়ভাবে বা হাতে যান - এটি আরও কার্যকর অপরিষ্কার কোডে অনুবাদ করুন তবে খুব জটিল দক্ষ খাঁটি কার্যকরী বাস্তবায়নের জন্য নির্মলভাবে একটি বিশুদ্ধ কার্যকরী স্পেসিফিকেশনকে অনুবাদ করা খুব সামান্য উপকারী। যদি আপনি এটি একটি খাঁচায় রাখতে পারেন তবে যেমন বাহ্যিক-পার্শ্ব-প্রতিক্রিয়া-মুক্ত ফাংশনটিতে এটি লক করে রাখুন তবে অশুদ্ধতা এত বড় বিষয় নয়।
রবিন গ্রিন

44

প্রকৃতপক্ষে বেশ কয়েকটি অ্যালগরিদম এবং ডেটা স্ট্রাকচার রয়েছে যার জন্য কোনও অ্যাসেম্পোটোটিক্যালি নিখুঁত কার্যকরী সমাধান (খাঁটি ল্যাম্বডা ক্যালকুলাসে প্রয়োগযোগ্য) টি এমনকি অলসতার সাথে পরিচিত নয়।

  • পূর্বোক্ত ইউনিয়ন-সন্ধান করুন
  • হ্যাশ টেবিল
  • অ্যারেগুলির
  • কিছু গ্রাফ অ্যালগরিদম
  • ...

যাইহোক, আমরা ধরে নিই যে "অপরিহার্য" ভাষায় মেমরির অ্যাক্সেস হ'ল ও (1) যেখানে তত্ত্ব অনুসারে এতটা asyptotically হতে পারে না (অর্থাত্ আনবাউন্ডেড সমস্যার আকারের জন্য) এবং বিশাল ডেটাসেটের মধ্যে মেমরির অ্যাক্সেস সর্বদা O (লগ এন) থাকে theory যা কার্যকরী ভাষায় অনুকরণ করা যায়।

এছাড়াও, আমাদের অবশ্যই মনে রাখতে হবে যে সমস্ত আধুনিক কার্যকরী ভাষাগুলি পারস্পরিক পরিবর্তনযোগ্য ডেটা সরবরাহ করে এবং হাস্কেল এমনকি এটি বিশুদ্ধতা (এসটি মোনাদ) ত্যাগ ছাড়াই সরবরাহ করে।


3
যদি ডেটাসেট শারীরিক স্মৃতিতে ফিট করে তবে এতে অ্যাক্সেস ও (1) হ'ল যে কোনও আইটেমটি পড়ার জন্য সময়ের পরিমাণের উপর একটি পরম উপরের সীমাটি খুঁজে পাওয়া সম্ভব। যদি ডেটাসেটটি না করে, আপনি I / O সম্পর্কে কথা বলছেন এবং এটি এখন পর্যন্ত প্রভাবশালী ফ্যাক্টর হবে, তবে প্রোগ্রামটি লিখিত আছে।
ডোনাল ফেলো

আচ্ছা, অবশ্যই আমি বাহ্যিক স্মৃতিতে অ্যাক্সেসের ও (লগ এন) এর ক্রিয়াকলাপের কথা বলছি। তবে, যে কোনও ক্ষেত্রে আমি বিএস কথা বলছিলাম: বাহ্যিক মেমরিটি ও (1) -দ্রুতচঞ্চলও হতে পারে ...
jkff

2
আমি মনে করি যে কার্যকরী প্রোগ্রামিংয়ের সাথে তুলনা করে অপরিহার্য প্রোগ্রামিং লাভগুলি সবচেয়ে বড় বিষয়গুলির মধ্যে একটি হ'ল একটি রাষ্ট্রের বিভিন্ন স্বতন্ত্র দিকগুলিতে রেফারেন্স রাখা এবং একটি নতুন রাজ্য উত্পন্ন করার ক্ষমতা যা এই সমস্ত উল্লেখগুলি নতুন রাষ্ট্রের সাথে সম্পর্কিত দিকগুলি নির্দেশ করে। ফাংশনাল প্রোগ্রামিং ব্যবহারের জন্য বর্তমান সামগ্রিক রাজ্যের নির্দিষ্ট সংস্করণের উপযুক্ত দিকটি সন্ধানের জন্য অনুসন্ধানের মাধ্যমে সরাসরি ডেরেফেরেন্সিং অপারেশনগুলি প্রতিস্থাপন করা প্রয়োজন।
সুপারক্যাট

এমনকি পয়েন্টার মডেল (ও (লগ এন) মেমরি অ্যাক্সেস, আলগাভাবে বলতে) খুব বড় আকারের স্কেলগুলিতে শারীরিকভাবে বাস্তববাদী নয়। আলোর গতি সীমাবদ্ধ করে তোলে যে কম্পিউটিং সরঞ্জামগুলির বিভিন্ন টুকরা একে অপরের সাথে কীভাবে যোগাযোগ করতে পারে, যখন এটি বর্তমানে বিশ্বাস করা হয় যে প্রদত্ত অঞ্চলে সর্বাধিক পরিমাণ তথ্য রাখা যেতে পারে তার পৃষ্ঠের ক্ষেত্র দ্বারা আবদ্ধ।
dfeuer

36

এই নিবন্ধটি দাবি করেছে যে ইউনিয়ন-অনুসন্ধান অ্যালগরিদমের পরিচিত খাঁটি কার্যকরী বাস্তবায়নের সকলেরই প্রকাশিত তার চেয়ে খারাপ অ্যাসিপোটিক জটিলতা রয়েছে, যার একটি সম্পূর্ণরূপে কার্যকরী ইন্টারফেস রয়েছে তবে অভ্যন্তরীণভাবে পরিবর্তনীয় ডেটা ব্যবহার করে।

অন্যান্য উত্তরগুলি দাবি করে যে এখানে কখনও কোনও তফাত থাকতে পারে না এবং উদাহরণস্বরূপ, খাঁটি কার্যকরী কোডের একমাত্র "অনর্থ" এটির সাথে সমান্তরাল হওয়া যায় যা আপনাকে এই বিষয়গুলিতে কার্যকরী প্রোগ্রামিং সম্প্রদায়ের অবগততা / উদ্দেশ্যমূলকতার ধারণা দেয় ।

সম্পাদনা করুন:

নীচের মন্তব্যগুলিতে উল্লেখ করা হয়েছে যে খাঁটি ফাংশনাল প্রোগ্রামিংয়ের উপকারিতা এবং পক্ষপাতিত্বের পক্ষপাতদুষ্ট আলোচনা "ফাংশনাল প্রোগ্রামিং সম্প্রদায়" থেকে না আসতে পারে। ভাল যুক্তি. সম্ভবত আমি যে উকিলগুলি দেখছি তারা ন্যায্য, একটি মন্তব্য উদ্ধৃত করার জন্য, "অশিক্ষিত"।

উদাহরণস্বরূপ, আমি মনে করি যে এই ব্লগ পোস্টটি এমন কেউ লিখেছেন যাকে বলা যেতে পারে যে কার্যকরী প্রোগ্রামিং সম্প্রদায়ের প্রতিনিধি হতে পারে এবং এটি "অলস মূল্যায়নের জন্য পয়েন্টগুলি" এর তালিকা হিসাবে যে কোনও অসুবিধা উল্লেখ করার জন্য এটি ভাল জায়গা হবে অলস এবং খাঁটি ক্রিয়ামূলক প্রোগ্রামিং থাকতে পারে। নিম্নলিখিতগুলির জায়গায় একটি ভাল জায়গা থাকতে পারে (প্রযুক্তিগতভাবে সত্য, তবে মজার না হওয়ার দিক থেকে পক্ষপাতিত্বমূলক) বরখাস্ত:

কঠোর কোনও ফাংশনে যদি কঠোর ভাষায় O (f (n)) জটিলতা থাকে তবে এটির অলস ভাষাতেও জটিলতা O (f (n)) থাকে। চিন্তিত কেন? :)


4

মেমরির ব্যবহারের উপর ভিত্তি করে স্থির উপরের সাথে কোনও পার্থক্য থাকা উচিত।

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


6
মেমরির ব্যবহারের উপর একটি নির্দিষ্ট উপরের সীমাবদ্ধতা নয় কীভাবে লোকেরা এই ধরণের জিনিস বিশ্লেষণ করে; আপনি একটি নির্বিচারে বৃহত, কিন্তু সীমাবদ্ধ মেমরি ধরে। অ্যালগরিদম বাস্তবায়নের সময়, আমি আগ্রহী যে এটি কীভাবে সর্বাধিক ইনপুট থেকে কোনও যথেচ্ছ ইনপুট আকার পর্যন্ত স্কেল করবে। আপনি যদি মেমরির ব্যবহারের উপর একটি নির্দিষ্ট উপরের বাউন্ড রাখেন, তবে আপনি এই গণনাটি আর কতক্ষণ গ্রহণ করতে পারবেন এবং এটি ও (1) বলবেন যে তার উপরে স্থির উপরের বাউন্ডটি রাখেন না কেন?
ব্রায়ান ক্যাম্পবেল

@ ব্রায়ান ক্যাম্পবেল: এটি সত্য। আমি কেবলমাত্র পরামর্শ দিচ্ছি যে আপনি যদি চান, আপনি অনুশীলনে অনেক ক্ষেত্রে ধ্রুবক ফ্যাক্টরের পার্থক্যটিকে উপেক্ষা করতে পারেন। মেমরি এবং সময়ের মধ্যে সমঝোতা করার সময় মিঃ মেমরির আরও বেশি মেমরি ব্যবহার করা আপনার রানটাইমকে কমপক্ষে লগ (এম) দ্বারা কমিয়ে আপনার রানটাইমকে হ্রাস করে তা নিশ্চিত করার প্রয়োজন।
ব্রায়ান

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.