List<T>.Reverse() মেথড লিস্টের সব এলিমেন্টের ক্রম উল্টা করে। Reverse(int index, int count) ওভারলোড দিয়ে নির্দিষ্ট রেঞ্জও উল্টা করা যায়।
উদাহরণ ১: নির্দিষ্ট রেঞ্জ উল্টা করা
using System;
using System.Collections.Generic;
public class Demo {
public static void Main(String[] args) {
List<String> list = new List<String>();
list.Add("One");
list.Add("Two");
list.Add("Three");
list.Add("Four");
list.Add("Five");
list.Add("Six");
list.Add("Seven");
list.Add("Eight");
Console.WriteLine("Enumerator iterates through the list elements...");
List<string>.Enumerator demoEnum = list.GetEnumerator();
while (demoEnum.MoveNext()) {
string res = demoEnum.Current;
Console.WriteLine(res);
}
// ইনডেক্স ২ থেকে ৪টি এলিমেন্ট উল্টা করা (Three, Four, Five, Six -> Six, Five, Four, Three)
list.Reverse(2, 4);
Console.WriteLine("Elements in ArrayList2...Reversed 4 elements beginning from index 2");
foreach (string res in list) {
Console.WriteLine(res);
}
}
}
আউটপুট
Enumerator iterates through the list elements... One Two Three Four Five Six Seven Eight Elements in ArrayList2...Reversed 4 elements beginning from index 2 One Two Six Five Four Three Seven Eight
উদাহরণ ২: পুরো লিস্ট উল্টা করা
using System;
using System.Collections.Generic;
public class Demo {
public static void Main(String[] args) {
List<int> list = new List<int>();
list.Add(5);
list.Add(10);
list.Add(20);
list.Add(50);
list.Add(100);
Console.WriteLine("Enumerator iterates through the list elements...");
List<int>.Enumerator demoEnum = list.GetEnumerator();
while (demoEnum.MoveNext()) {
int res = demoEnum.Current;
Console.WriteLine(res);
}
list.Reverse();
Console.WriteLine("Elements in List...Reversed");
foreach (int i in list) {
Console.WriteLine(i);
}
}
}
আউটপুট
Enumerator iterates through the list elements... 5 10 20 50 100 Elements in List...Reversed 100 50 20 10 5
মূল পয়েন্টস
Reverse()— পুরো লিস্ট ইন-প্লেস উল্টা করে।Reverse(index, count)— সাব-রেঞ্জ উল্টা করে (ইনডেক্স ০-বেসড)।- এই মেথড নতুন লিস্ট তৈরি করে না, মূল লিস্টই মডিফাই হয়।
- সময় জটিলতা: O(n)।