অ্যারে শ্রেণীর শিফট এবং আনশিফ্ট পদ্ধতি রুবিতে কী করে তা বুঝতে আমার খুব কষ্ট হচ্ছে। কেউ কি তারা আমাকে বুঝতে সাহায্য করতে পারে?
pushএটি শীর্ষে, এবং shiftএটি অন্য প্রান্তে বেরিয়েছে।
অ্যারে শ্রেণীর শিফট এবং আনশিফ্ট পদ্ধতি রুবিতে কী করে তা বুঝতে আমার খুব কষ্ট হচ্ছে। কেউ কি তারা আমাকে বুঝতে সাহায্য করতে পারে?
pushএটি শীর্ষে, এবং shiftএটি অন্য প্রান্তে বেরিয়েছে।
উত্তর:
রুবি ডকুমেন্টেশন তাকিয়ে
অ্যারে.শিফ্ট অ্যারে থেকে প্রথম উপাদানটি সরিয়ে আবার এটি প্রদান করে
a = [1,2,3]
puts a.shift
=> 1
puts a
=> [2, 3]
আনশিফ্ট অ্যারের সামনের দিকে সরবরাহ করা মানটিকে অন্য সমস্ত উপাদানকে একটিতে সরিয়ে নিয়ে যায়
a=%w[b c d]
=> ["b", "c", "d"]
a.unshift("a")
=> ["a", "b", "c", "d"]
shiftএবং unshiftফিলো স্ট্যাকের মতো কাজ করুন pushএবং shiftফিফোর সারির মতো কাজ করব, যদি না আমি কিছু সম্পর্কে বিভ্রান্ত হই।
shiftএবং unshiftহিসাবে একই ভাবে কাজ করে popএবং pushতারা স্ট্যাকগুলি যার প্রতি তুমি সংযুক্ত করতে পারবেন এবং অপসারণ উপাদানের (সাধারণত সময় প্রতি এক) হিসাবে ব্যবহারের অ্যারে বোঝানো হয়। পার্থক্যটি কেবল এটিই shiftএবং unshiftশুরুতে উপাদানগুলি যুক্ত / সরিয়ে ফেলুন Array, আসলে অন্য সমস্ত উপাদানগুলিকে আইএনএসে স্থানান্তরিত করুন , popএবং pushশেষের দিকে উপাদানগুলি যুক্ত / সরান Array, যাতে অন্যান্য উপাদানগুলির সূচকগুলি সংরক্ষণ করে।
উদাহরণ:
# Spacing for clarity:
a = [2, 4, 8] # a => [2, 4, 8]
a.push(16, 32) # a => [2, 4, 8, 16, 32]
a.unshift(0, 1) # a => [0, 1, 2, 4, 8, 16, 32]
a.shift # a => [1, 2, 4, 8, 16, 32]
a.pop # a => [1, 2, 4, 8, 16]
এটি প্রথম উপাদানটি ধরে, অ্যারে থেকে সরিয়ে দেয় এবং মুছে ফেলা উপাদানটিকে ফেরত দেয়। এটি স্ট্যাকের মতো অ্যারের সাথে আচরণ করার একটি উপায়: shiftপপ হয়, unshiftপুশ হয়।
popএবং pushএটিও Arrayপদ্ধতি, বিভ্রান্তি তৈরি করা উচিত নয়। :-)
যদি আপনি অ্যারেটিকে প্রক্রিয়াজাতকরণের মানগুলির একটি সারি হিসাবে মনে করতে পারেন তবে আপনি পরবর্তী স্থান (সামনের) মান নিতে পারেন এবং উপলব্ধ স্থানটি দখল করতে অন্য মূল্যকে "শিফট" করতে পারেন। আনশিফ্ট মানগুলিকে ফিরিয়ে দেয় - সম্ভবত আপনি সেগুলির কয়েকটি প্রসেস করতে প্রস্তুত নন, বা পরে কিছু কোড তাদের পরিচালনা করতে দেবে।
এটা তোলে অ্যারের প্রথম উপাদান ফেরৎ, এবং, অ্যারে থেকে সরিয়ে ফেলা হবে নাড়াচাড়া উপাদান এক জায়গায় ফিরে।
তাই স্থানান্তরিত [1,2,3,4,5]
ফিরে আসে 1এবং অ্যারে সেট করে [2,3,4,5]।
আরও এখানে ।
shift/unshiftমতো শিখলে আপনিpush/popকোন 'ডাম্প' উপাদান এবং কোনটি 'সন্নিবেশ করায়' তা মনে রাখার জন্য পদ্ধতিগুলির নাম থেকে আপনি মানসিকভাবে 'চ' নামাতে পারেন। :)