Agliullov D. A. Lab Work 3 Base #11

Merged
eegov merged 19 commits from Lab3 into Lab2 2022-10-14 10:03:33 +04:00
2 changed files with 15 additions and 14 deletions
Showing only changes of commit e88bc4f57c - Show all commits

View File

@ -57,8 +57,8 @@ namespace AirBomber
/// </summary>
/// <param name="map"></param>
/// <param name="airplane"></param>
/// <returns></returns>
public static bool operator +(MapWithSetAirplanesGeneric<T, U> map, T airplane)
/// <returns>Возвращает позицию вставленого объекта либо -1, если не получилось его добавить</returns>
public static int operator +(MapWithSetAirplanesGeneric<T, U> map, T airplane)
{
return map._setAirplanes.Insert(airplane);
}
@ -67,8 +67,8 @@ namespace AirBomber
/// </summary>
/// <param name="map"></param>
/// <param name="position"></param>
/// <returns></returns>
public static bool operator -(MapWithSetAirplanesGeneric<T, U> map, int position)
/// <returns>Возвращает удаленный объект, либо null если его не удалось удалить</returns>
public static T operator -(MapWithSetAirplanesGeneric<T, U> map, int position)
{
return map._setAirplanes.Remove(position);
}

View File

@ -33,8 +33,8 @@ namespace AirBomber
/// Добавление объекта в набор
/// </summary>
/// <param name="airplane">Добавляемый самолет</param>
/// <returns></returns>
public bool Insert(T airplane)
/// <returns>Возвращает позицию вставленого объекта либо -1, если не получилось его добавить</returns>
public int Insert(T airplane)
{
return Insert(airplane, 0);
}
@ -48,8 +48,8 @@ namespace AirBomber
/// </summary>
/// <param name="airplane">Добавляемый самолет</param>
/// <param name="position">Позиция</param>
/// <returns></returns>
public bool Insert(T airplane, int position)
/// <returns>Возвращает позицию вставленого объекта либо -1, если не получилось его добавить</returns>
public int Insert(T airplane, int position)
{
int positionNullElement = position;
while (Get(positionNullElement) != null)
@ -59,7 +59,7 @@ namespace AirBomber
// Если изначальная позиция была некорректной или пустых элементов справа не оказалось возвращаем false
if (!isCorrectPosition(positionNullElement))
{
return false;
return -1;
}
while (positionNullElement != position) // Смещение вправо
{
@ -67,19 +67,20 @@ namespace AirBomber
positionNullElement--;
}
_places[position] = airplane;
return true;
return position;
}
/// <summary>
/// Удаление объекта из набора с конкретной позиции
/// </summary>
/// <param name="position"></param>
/// <returns></returns>
public bool Remove(int position)
/// <returns>Возвращает удаленный объект, либо null если его не удалось удалить</returns>
public T Remove(int position)
{
if (!isCorrectPosition(position))
return false;
return null;
var result = _places[position];
_places[position] = null;
return true;
return result;
}
/// <summary>
/// Получение объекта из набора по позиции