Составить оператор INSERT, который вставляет элементы в начало списка - C#
Формулировка задачи:
Помогите, пожалуйста!!! Нужно составить оператор INSERT, который вставляет элементы в начало списка (при этом реализация списка осуществляется посредством массива).
Можно также использовать язык Pascal
Решение задачи: «Составить оператор INSERT, который вставляет элементы в начало списка»
textual
Листинг программы
- using System;
- namespace ConsoleApp
- {
- class Program
- {
- // Для вставки одного элемента
- public static int[] InsertOne(int[] array, int elem) {
- int[] result = new int[array.Length + 1];
- result[0] = elem;
- for (int i = 1; i <= array.Length; i++)
- result[i] = array[i - 1];
- return result;
- }
- // Для вставки нескольких элементов
- public static int[] InsertMany(int[] array, params int[] elements) {
- int[] result = new int[array.Length + elements.Length];
- for (int i = 0; i < elements.Length; i++)
- result[i] = elements[i];
- for (int i = elements.Length; i < result.Length; i++)
- result[i] = array[i - elements.Length];
- return result;
- }
- // Обобщённый вариант для любого типа
- public static T[] InsertMany<T>(T[] array, params T[] elements) {
- T[] result = new T[array.Length + elements.Length];
- for (int i = 0; i < elements.Length; i++)
- result[i] = elements[i];
- for (int i = elements.Length; i < result.Length; i++)
- result[i] = array[i - elements.Length];
- return result;
- }
- static void Main(string[] args) {
- int[] ar1 = { 2, 3, 4, 5 };
- int[] res1 = InsertOne(ar1, 1); // {1, 2, 3, 4, 5}
- // {1, -1, -2, 1, 2, 3, 4, 5}
- int[] res2 = InsertMany<int>(ar1, 1, -1, -2);
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д