অ্যারে কি
একটি অ্যারে হ'ল একই রকমের ডেটাগুলির সাথে সংগৃহীত মেমরির স্থানে সংরক্ষণ করা। ডেটা টাইপগুলি একটি পূর্ণসংখ্যার, ভাসমান, স্ট্রিং ইত্যাদি হতে পারে computer আমরা তাদের ইনডেক্সিং করে ডেটা পুনরুদ্ধার করতে পারি। ধরা যাক আমাদের আছে n একটি অ্যারের উপাদানগুলি, এবং সূচীকরণ শুরু হয় 0 এবং পর্যন্ত যায় এন-1 একটি বর্ধিত পদ্ধতিতে অবস্থান। দুটি সূচকের মধ্যে পার্থক্যটিকে অফসেট বলে। দয়া করে নীচের চিত্রটি দেখুন।
অ্যারের উদাহরণ

অ্যারের ব্যবহার
- ধরা যাক একটি প্রোগ্রামে আমাদের 100 ভেরিয়েবল দরকার। ভি 100, ভি 1, ভি 2,…।, ভি 3 এর মতো 100 ভেরিয়েবল ঘোষণা করা কি সম্ভব? পরিবর্তে, আমরা ভি [0], ভি [1],…, ভি [100] এর মতো একটি অ্যারে ব্যবহার করতে পারি, যা একই কাজ করবে।
- লাইব্রেরি ম্যানেজমেন্ট সিস্টেমের মতো আমাদের একজাতীয় ডেটা ধরণের প্রয়োজন যেখানে একটি অ্যারে ব্যবহার করা যেতে পারে।
- অনুসন্ধান, বাছাইয়ের মতো অ্যালগরিদম অ্যারে ব্যবহার করে
অ্যারে বৈশিষ্ট্য
- একটি অ্যারে সমজাতীয় ডেটা ধরণের সঞ্চয় করে এবং ডেটার আকার একই। উদাহরণস্বরূপ, আমরা যদি পূর্ণসংখ্যার ডেটা টাইপ সঞ্চয় করি তবে সমস্ত ডেটা অবশ্যই একটি পূর্ণসংখ্যা এবং তার আকার 4 হয় size
- ডেটা একটি স্বচ্ছ মেমরির স্থানে সংরক্ষণ করা হয়।
- আমরা তাদের সূচকের মাধ্যমে ডেটা পুনরুদ্ধার করতে পারি।
অ্যারে সুবিধা
- এর সূচকটি সরাসরি অ্যারেতে যে কোনও উপাদান অ্যাক্সেস করতে পারে। উদাহরণস্বরূপ, আমরা যদি বায়ু [0] ব্যবহার করি তবে এটি 0 তম অবস্থানের উপাদানটি ফিরিয়ে দেবে। একইভাবে [5] অ্যারেতে 5 ম পজিশনের উপাদানটি ফিরিয়ে দেবে।
- একটি অ্যারের মাধ্যমে ট্র্যাভারিং করা খুব সহজ কারণ আমরা কেবলমাত্র সূচককে বৃদ্ধি করি। মনে করুন যে কোনও অ্যারে 0 তম অবস্থান নিয়ে শুরু হয়েছে এবং আমাদের মান পর্যন্ত অবধি বাড়ানোর জন্য প্রয়োজনীয় মানের সংখ্যা রয়েছে এন-1তম অবস্থান
অ্যারেতে ইনডেক্সিংয়ের প্রকারগুলি
- 0- ভিত্তিক সূচক: অ্যারের প্রথম উপাদানটি জিরোথ অবস্থানের সাথে শুরু হবে। অ্যারে A এর জন্য, প্রথম উপাদানটি A [0] করবে এবং এর যদি n সংখ্যা হয় তবে শেষ উপাদানটি হবে A [n-1]
- 1 - ভিত্তিক সূচক: অ্যারের প্রথম উপাদানটি প্রথম অবস্থানের সাথে শুরু হবে। অ্যারে A এর জন্য, প্রথম উপাদানটি A [1] করবে এবং এর যদি n সংখ্যা হয় তবে শেষ উপাদানটি হবে A [n]
- এন ভিত্তিক সূচক: প্রথম উপাদানটি যেকোনও এলোমেলো সূচীতে সংরক্ষণ করা যেতে পারে।

অ্যারে এর প্রকার
মূলত দুটি ধরণের অ্যারে উপলব্ধ।
- 1 মাত্রিক অ্যারে বা লিনিয়ার অ্যারে (উদাহরণ: এ [1], এ [2], এ [3] .., এ [এন])
- বহুমাত্রিক অ্যারে
- 2 ডি অ্যারে বা ম্যাট্রিক্স (উদাহরণ: [a [0] [0], a0 [0] [1] .. এ [এম] [এন]]
- 3 ডি অ্যারে (উদাহরণ: এ [4] [4] [4])
- এনডি অ্যারে
অ্যারের সময় জটিলতা
অপারেশনস | গড় কেস | সবচেয়ে বাজে ক্ষেত্রে |
---|---|---|
অপ্স অ্যাক্সেস | ও (1) | ও (1) |
খোঁজ | উপর) | উপর) |
অপ্স sertোকান | উপর) | উপর) |
অপস মুছুন | উপর) | উপর) |
এখন আমরা জাভা, পাইথন এবং সি তে অ্যারে কীভাবে ঘোষণা করব তা নিয়ে আলোচনা করব
জাভাতে অ্যারেগুলি কীভাবে ঘোষণা করবেন
রৈখিক বা এক-মাত্রিক অ্যারে ঘোষণা করতে, দয়া করে নীচের প্রক্রিয়াটি অনুসরণ করুন।
অ্যারে স্ট্রিং [] নাম ঘোষণা করতে; // স্ট্রিং [] নাম={"পল","আডাম","ফাতিমা","রিকি"} মান ঘোষণা এবং বরাদ্দ করতে; // একটি পূর্ণসংখ্যা অ্যারে তৈরি করতে সংজ্ঞায়িত ডেটা টাইপ অবশ্যই একটি পূর্ণসংখ্যা হতে হবে। অনুগ্রহ করে নিচে দেখুন: int[] num={10,15,20,30,35,40}; // অ্যারেকে গতিশীলভাবে int ঘোষণা করতে [] num=new int[10]; //যেকোন সূচক সংখ্যার জন্য একটি মান নির্ধারণ করতে [0]=10; সংখ্যা[1]=20;
পাইথনে অ্যারেগুলি কীভাবে ঘোষণা করবেন
#মূল্যের নাম ঘোষণা এবং বরাদ্দ করা=["পল","আডাম","ফাতিমা","রিকি"] #যেকোন মান নাম নির্ধারণ করতে[0]="XYZ"
সিটিতে অ্যারেগুলি কীভাবে ঘোষণা করবেন
// ঘোষণা এবং মান int num [5]={0,5,11,16,21};
এখন আমরা জাভা, অজগর এবং সি এর অ্যারে উপাদানগুলিতে কীভাবে অ্যাক্সেস করব তা নিয়ে আলোচনা করব
জাভাতে অ্যারে উপাদান কীভাবে অ্যাক্সেস করবেন
// স্ট্রিং [] নাম={"পল","আডাম","ফাতিমা","রিকি"} মান ঘোষণা এবং বরাদ্দ করতে; // অ্যারে উপাদান অ্যাক্সেস করতে System.out.println(name[0]);
পাইথনে অ্যারে উপাদান কীভাবে অ্যাক্সেস করবেন
#মূল্যের নাম ঘোষণা এবং বরাদ্দ করতে=["পল","আডাম","ফাতিমা","রিকি"] #মানটি অ্যাক্সেস করতে var=নাম[0]
সি তে অ্যারে উপাদান কীভাবে অ্যাক্সেস করবেন
// ঘোষণা এবং মান int num [5]={0,5,11,16,21}; // মান printf("%d\n", মানগুলি[0]) অ্যাক্সেস করতে;
এখন আমরা জাভা, অজগর এবং সি তে অ্যারে দৈর্ঘ্য কীভাবে ব্যবহার করব তা নিয়ে আলোচনা করব
জাভাতে অ্যারে দৈর্ঘ্য কীভাবে ব্যবহার করবেন
স্ট্রিং[] নাম={"পল","আডাম","ফাতিমা","রিকি"}; // দৈর্ঘ্য পেতে int size=name.length; System.out.printn(size);
পাইথনে অ্যারে দৈর্ঘ্য কীভাবে ব্যবহার করবেন
#মূল্যের নাম ঘোষণা এবং বরাদ্দ করতে=["পল","আডাম","ফাতিমা","রিকি"] সাইজ=লেন(নাম)
সিটিতে অ্যারে দৈর্ঘ্য কীভাবে ব্যবহার করবেন
// ঘোষণা এবং মান int num [5]={0,5,11,16,21}; printf("int অ্যারের আকার:%d \n",sizeof(num)/sizeof(num[0]));
এখন আমরা জাভা, পাইথন এবং সি-তে অ্যারে কীভাবে লুপ করব তা নিয়ে আলোচনা করব
জাভাতে অ্যারেতে কীভাবে লুপ ব্যবহার করবেন
পাবলিক স্ট্যাটিক ভ্যাইড মেইন(স্ট্রিং[] আর্গস){int[] num=new int[10]; // স্ট্রিং [] নাম={"পল","আডাম","ফাতিমা","রিকি"} মান ঘোষণা এবং বরাদ্দ করতে; System.out.println(নাম[0]); // লুপের জন্য (int i=0; i
পাইথনে অ্যারেতে লুপটি কীভাবে ব্যবহার করবেন
নাম=["পল","আডাম","ফাতিমা","রিকি"] নামের জন্য i: print(i)
সিটিতে অ্যারেতে লুপটি কীভাবে ব্যবহার করবেন
#অন্তর্ভুক্ত int main() { // int num [5]={10,16,21,26,31} মান ঘোষণা এবং বরাদ্দ করতে; জন্য(int i=0;i<5;i++){ printf("%u\n", num[i]); } রিটার্ন 0; }
কিছু গুরুত্বপূর্ণ অ্যারের সাক্ষাত্কারের প্রশ্ন
Qn 1: আমরা জাভাতে অ্যারের আকার পরিবর্তন করতে পারি?
উত্তর: না, আমরা অ্যারের আকার পরিবর্তন করতে পারি না। এটি তৈরি হয়ে গেলে অ্যারের আকার স্থির করা হয়। আপনার যদি আকার পরিবর্তন করতে হয় তবে আপনার অ্যারেলিস্ট ব্যবহার করা উচিত।
Qn 2. অ্যারেস্টোরএক্সপেশন কী?
উত্তর: অ্যারে অনুরূপ ডেটা টাইপ করে। আমরা যদি অ্যারেতে অন্য কোনও ডেটা ধরণের সঞ্চয় করার চেষ্টা করি তবে এটি ব্যতিক্রম দেয় "অ্যারেস্টোর এক্সপ্লেশন।" উদাহরণ স্বরূপ:
পাবলিক স্ট্যাটিক ভ্যাইড মেইন(স্ট্রিং[]আর্গস){int[]num=new int[5]; num[0]=12.5;//কম্পাইল টাইম এক্সেপশন } পাবলিক স্ট্যাটিক ভ্যায়েড মেইন(স্ট্রিং[] আর্গস){ অবজেক্ট[] num=নতুন স্ট্রিং[5]; //সংখ্যা[0]=12.5;//সংকলন সময় ব্যতিক্রম সংখ্যা[1]=নতুন ডাবল(12.5); //রানটাইম ব্যতিক্রম java.lang.ArrayStoreException: java.lang.Double }
Qn 3. অ্যারেআইন্ডেক্স আউট অফফাউন্ডস এক্সসেপশন কী?
উত্তর: অ্যারেআইন্ডেক্সআউটআউটবাউন্ডসেক্সপশন ব্যবহারকারীরা যদি অ্যারে সূচকটি অ্যাক্সেস করার চেষ্টা করেন যা অ্যারে থেকে নেতিবাচক বা বেশি। যদি অ্যারে সূচকটি 0 দিয়ে শুরু হয় এবং আকার দৈর্ঘ্য হয় তবে 0 এর চেয়ে কম এবং দৈর্ঘ্য -1 এর চেয়ে বড় কিছু অ্যারেআইন্ডেক্সআউটআউটবাউন্ডসেক্সশন দেবে।
Qn 4. অ্যারেস্টোরএক্সসিপশন এবং অ্যারেআইন্ডেক্স আউট অফফাউন্ডস এক্সেকশন এর মধ্যে পার্থক্য কী?
উত্তর: উভয় ব্যতিক্রম রানটাইম ছুড়ে ফেলে। অ্যারেস্টোরএক্সসিপশন যখন ডেটা টাইপ অ্যারে ডেটা টাইপের সাথে মেলে না তখন ছুড়ে ফেলে, যখন সূচি অ্যাক্সেসের সীমাতে না থাকে তখন অ্যারেআইএনডেক্সআউটআউটফাউন্ডস এক্সপশন নিক্ষেপ করে।
Qn 5. জাভাতে অ্যারের আকারের সাথে একটি অ্যারে কীভাবে শুরু করবেন?
উত্তর:
int[] num=new int[5];//5 হল অ্যারের আকার
Qn 6. পূর্বনির্ধারিত মান সহ একটি অ্যারে কিভাবে শুরু করবেন?
উত্তর:
int[] num={0,5,11,16,21};
Qn 7. জাভাতে একটি অ্যারে বাছাই কিভাবে?
উত্তর: অ্যারে'র পূর্বনির্ধারিত পদ্ধতিটি ব্যবহার করা অ্যারে.সোর্ট (), আমরা অ্যারে বাছাই করতে পারেন।
পাবলিক স্ট্যাটিক ভ্যাইড মেইন(স্ট্রিং[] আর্গস){int[] num={0,5,11,16,21}; Arrays.sort(num); জন্য(int i=0;i
Qn 8. অ্যারে কে স্ট্রিংয়ে রূপান্তর করবেন?
উত্তর: অ্যারে'র পূর্বনির্ধারিত পদ্ধতিটি ব্যবহার করা অ্যারে.টো স্ট্রিং (), আমরা অ্যারে বাছাই করতে পারেন।
পাবলিক স্ট্যাটিক ভ্যাইড মেইন(স্ট্রিং[] আর্গস){int[] num={0,5,11,16,21}; System.out.print(Arrays.toString(num)); }
Qn 9. অ্যারে কপি কিভাবে?
উত্তর: ব্যবহার System.arrayCopy (), ব্যবহারকারীরা অ্যারে অনুলিপি করতে পারেন। অন্যথায়, তারপরে অ্যারে পুনরুক্ত করে অ্যারের উপাদানগুলি ম্যানুয়ালি করতে পারেন।
Qn 10. জেনারিক্স একটি অ্যারে ব্যবহার করা যেতে পারে?
উঃ না আমরা অ্যারে দিয়ে জেনেরিক্স ব্যবহার করতে পারি না।
Qn 12. একটি অ্যারের অসুবিধাগুলি কী কী?
উত্তর:
- অ্যারের আকার স্থিতিশীল আমরা একবার আরম্ভ করার পরে আকার পরিবর্তন করতে পারি না।
- সন্নিবেশ এবং মোছার মতো অপারেশনগুলি অ্যারেতে সম্পাদন করা কঠিন।
- যদি ব্যবহারকারী প্রয়োজনীয়তার চেয়ে বেশি মেমরির সংজ্ঞা দেয় তবে অতিরিক্ত মেমরি নষ্ট হয়ে যায়।
- অ্যারে ব্যবহৃত ডেটা টাইপ একই হওয়া উচিত। উদাহরণস্বরূপ, যদি আমরা ব্যবহার করি কোন int ডেটা টাইপ হিসাবে, আমরা সঞ্চয় করতে পারি না ভাসা, স্ট্রিং একই অ্যারে। এটা সর্বদা থাকতে হবে কোন int কেবল.
উপসংহার
এখন অবধি, আমরা এর মূল বিষয়গুলি আবরণ করেছি অ্যারেগুলির। পরের বিষয়ে, আমরা অ্যারের কয়েকটি গুরুত্বপূর্ণ সমস্যা এবং সমাধানগুলি সম্পর্কে লিখব। ডেটা স্ট্রাকচারের উপর আমাদের সম্পূর্ণ টিউটোরিয়ালগুলি যেতে, দয়া করে এটি ক্লিক করুন লিংক। এই বিভাগের আরও বিশদের জন্য, দয়া করে এটি পড়ুন লিংক.