Сергей
смысл тот же
Никита
А как ты еще хочешь сделать?
RA-TA-TATA
да я думал как в питоне можно дописать global и все))
Никита
public static class Data
{
public string data {get;set;}
}
Никита
И обращайся из любой точки программы
Никита
Статик еще у переменой
Anonymous
кто может помочь, нужно сделать линейный двунаправленный список из чисел типа double и удалить из списка числа, у которых дробная часть больше 0.5
RA-TA-TATA
Ребята, чем
string s = (string)((Button)e.OriginalSource).Content
отличается от
string s = button.Text
?
Сергей
Anonymous
Сергей
в двунаправленном списке каждый элемент хранит ссылки на предыдущий и следующий элемент. У первого элемента ссылка на предыдущий =null. У последнего ссылка на следующий равна null.
Сергей
когда удаляешь элемент списка в средине нужно у пердыдущего переставить ссылку с текущего на следующий, а у следующего наоборот с текущего на предыдущий. чтоб список остался целым. Ну и обработать ситуации, когда удаляется первый или последний элементы.
Сергей
сам класс списка хранит ссылки только на первый и последний элементы, вынутренние элементы ссылаются друг на друга как я описал выше
Anonymous
Сергей
Сделать пару функций. GetNextElement GetPrevElement Remove
Anonymous
Сергей
У тебя тема на структуры данных. Тебе по-любому писать класс под двунаправленный список
Anonymous
Нет
Anonymous
Anonymous
может попробовать метод Where?
Stas
RA-TA-TATA
Stas
Хз, я же не в курсе какой у тебя там объект, визуально да. И объявляя новую переменную используй var, компилятор и так знает какой тип аернётся
Stas
О сорри это у тебя дефолтные контроль, тогда точно не скажу, но думаю второй вариант предпочтительнее
Stas
И вместо (string) впредь используй ToString() так к логике ближе
RA-TA-TATA
Вар?
RA-TA-TATA
В том плане. Лучше же сразу тип указать, яснее будет
Stas
Кому яснее будет? var просто избавит тебя от дополнительных исправлений при рефакторинге, в нормальном коде я себе не представляю необходимости в ручном указании типа переменной при присваивании ей значения, если у тебя трудности в определении типа на глаз, наведи курсор на имя переменной
Stas
Допустим ты передаёшь свойство объекта типа int в другую переменную, и явно пишешь тип этой переменной(int), а завтра теье
тебе его нужно сделать например (uint, float, short) если напишешь var то поменять придётся только тип в свойств объекта, если ты жёстко написал тип, то придётся менять во всех референсах
Сергей
Посмотрел задания что вчера скидывал Антон
1 поворот дерева
static TreeNode Reverse(TreeNode tree)
{
if (tree == null) return null;
return new TreeNode(tree.Value, Reverse(tree.Right), Reverse(tree.Left));
}
2 Клонирование объекта
static Object DeepClone(Object src)
{
MethodInfo mi = src.GetType().GetMethod("MemberwiseClone", BindingFlags.Instance | BindingFlags.NonPublic);
return mi.Invoke(src, null);
}
а вот над третьим "сортировка мега файла" до сих пор думаю. Однако задание так задание :)
RA-TA-TATA
Подскажите, LayoutRoot.Children.Add(myButton);
Для чего нужен Children?
Egor
RA-TA-TATA
А просто добавить почему нельзя?
Egor
Так вроде это и есть то самое «просто добавить»
RA-TA-TATA
Как можно прочитать файл, чтобы каждое слово отделенное символом ";" записывалось отдельно
RA-TA-TATA
или лучше прочитать, записать его в переменную и потом пройтись уже циклом записывая в массив?
Stas
Split(;)
Stas
Точнее Split(";")
Никита
';' вот так вроде
Никита
Хотя, может и перегрузка с string есть
Сергей
По сортировке большого файла: написал 2 варианта. Первый красивый, но на большом файле он работать точно не будет.
Сергей
static void CopyFileSort(string fileName, int variant)
{
File.WriteAllLines($"{Path.GetFileName(fileName)}.{variant}.sort",
from line in File.ReadLines(fileName)
orderby GetStringIndex(line)
select line );
}
Сергей
второй более рабочий: прохожу по всему массиву беру в каждой строке числовой индекс по которому сортировать, позицию в файле и длину строки. Потом сортирую эти индексы, а потом ужу бегаю по файлу выбираю строки согласно сортировке и копирую в новый файл.
Сергей
Может кто-то предложить вариант получше?
Сергей
придумал еще один вариант: запулить всё в таблицу БД и пусть у slq болит голова :)
Ernest
class QueueItem
{
public int Value { get; set; }
public QueueItem Next { get; set; }
}
class Queue
{
QueueItem head;
QueueItem tail;
public void Enqueue(int value)
{
var item = new QueueItem { Value = value };
if (head == null)
{
head = tail = item;
}
else
{
tail.Next = item;
tail = item;
}
}
public int Dequeue()
{
if (head == null)
throw new InvalidOperationException();
var result = head.Value;
head = head.Next;
if (head == null) tail = null;
return result;
}
}
Ernest
помогите с пониманием
Ernest
это реализация класса очереди на связных списках
Ernest
в class QueueItem я создаю два поля
Ernest
первое понятно для чего
Ernest
для чего нужно public QueueItem Next { get; set; }
Ernest
и как его понять?
Maxwell
Anonymous
Maxwell
Ок, термин указатель использован не очень удачно
Ссылочная переменная которая хранит ссылку на другой объект QueueItem, в контексте класса Queue - на следующий элемент очереди
Ernest
Понял
Ernest
Спасибо
RA-TA-TATA
Ребята, помогите, это баг какой-то в WPF? У меня просто отдельный TextBox привязывается как-то к изменениям основного окна и меняется за ним
RA-TA-TATA
Хотя я ничего не делал
Никита
там идет привязка
RA-TA-TATA
уже не 1 раз
Никита
к границам
RA-TA-TATA
Так именно 1 привязывается?
Никита
нажми на текстбокс
Никита
и там будут скрепки
Никита
по сторонам
Никита
белые
Никита
нажми на них, чтобы они серые стали
RA-TA-TATA
а, спасибо, странно что они сами как-то срабатывают
Никита
надо вручную прописывать элементы))
RA-TA-TATA
Надо все по максимуму использовать) зря что ли давали окошко со всеми значениями
Никита
:)
RA-TA-TATA
А еще вопрос, хочу вычистить массив, как можно это сделать без создания нового? null подойдет? Потому что прошелся по темам и говорят только либо null либо новый
Никита
очистить массив?
RA-TA-TATA
+
Никита
стринг?
RA-TA-TATA
Да, он неизменяемый) но может есть варианты?
Никита
arr.Clear();
Никита
есть такое?
RA-TA-TATA
-