আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা n * n ক্রম (বর্গ ম্যাট্রিক্স) এর অ্যারেগুলির একটি অ্যারে নেয়। ফাংশনটি অ্যারেটিকে 90 ডিগ্রি (ঘড়ির কাঁটার দিকে) ঘোরানো উচিত। শর্ত হল যে এটি আমাদের জায়গায় করতে হবে (কোন অতিরিক্ত অ্যারে বরাদ্দ না করে)।
উদাহরণস্বরূপ -
যদি ইনপুট অ্যারে −
হয়const arr = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ];
তারপর ঘোরানো অ্যারে −
এর মত হওয়া উচিতconst output = [ [7, 4, 1], [8, 5, 2], [9, 6, 3], ];
উদাহরণ
নিম্নলিখিত কোড -
const arr = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ]; const rotateArray = (arr = []) => { for (let rowIndex = 0; rowIndex < arr.length; rowIndex += 1) { for (let columnIndex = rowIndex + 1; columnIndex < arr.length; columnIndex += 1) { [ arr[columnIndex][rowIndex], arr[rowIndex][columnIndex], ] = [ arr[rowIndex][columnIndex], arr[columnIndex][rowIndex], ]; } } for (let rowIndex = 0; rowIndex < arr.length; rowIndex += 1) { for (let columnIndex = 0; columnIndex < arr.length / 2; columnIndex += 1) { [ arr[rowIndex][arr.length - columnIndex - 1], arr[rowIndex][columnIndex], ] = [ arr[rowIndex][columnIndex], arr[rowIndex][arr.length - columnIndex - 1], ]; } } }; rotateArray(arr); console.log(arr);
আউটপুট
নিম্নোক্ত কনসোলে আউটপুট -
[ [ 7, 4, 1 ], [ 8, 5, 2 ], [ 9, 6, 3 ] ]