почему нет смысла ехать по H1B?

User avatar
KP580BE51
Уже с Приветом
Posts: 15007
Joined: 14 Jun 2005 11:50
Location: Ukraine

Post by KP580BE51 »

Misha wrote:А вообще именно на мысль о том, что Лотерея была ехать на специфическую работу здесь на Привете встречается некоторыми в штыки.

Что за "специфическая работа"?
User avatar
Misha
Уже с Приветом
Posts: 29236
Joined: 04 Jan 1999 10:01
Location: Portland OR, USA

Post by Misha »

KP580BE51 wrote:
Misha wrote:А вообще именно на мысль о том, что Лотерея была ехать на специфическую работу здесь на Привете встречается некоторыми в штыки.

Что за "специфическая работа"?


Это у нас щас сказка про белого бычка получится. :mrgreen:

Есть работа где делают ГК сразу, а есть где не сразу. И т.д. и т.п. - много отличий. К примеру, у меня начали сразу, а у моих друзей через год. А поскольку они приехали на год позже, в 2000-ом, то им с грехом пополам начали летом 2001-го, а тут 11 сентября ёкнуло. Обе фирмы - очень большие и солидные, между прочим.

Вот и DP подразумeвает специфику некоторых фирм, которые где-то делали а где-то не делали ....
User avatar
Двуручник
Новичок
Posts: 22
Joined: 12 Sep 2004 02:45
Location: PA, USA

Post by Двуручник »

Gennadiy wrote:
2005 wrote:Лучше расскажите на каких вопросах народ засыпается? Интересен уровень.

Хе. В последнее время у меня появился любимый вопрос для Кумаров и Пателов.
Есть ArrayList (для тех кто не работает с .NET - это самый используемый collection class в 1.0 и 1.1 (народа знающего 2.0 мне еще не попадалось)) в который поместили кучу строк (string).
Надо удалить все строки начинающиеся с "A". Конкретной имплементации не спрашиваю. Только идею.
Каких только замысловатых алгоритмов мне не придумывали. 8)


Если лист большой можно и по-замысловатее, чтоб побыстрее работало...

aList.Sort();

int start = aList.Count;
for(int i=0; i<aList.Count; i++) {
if(aList[i].ToString().StartWith("A")) { start = i; break; }
}

int end = -1;
for(int i=aList.Count; i>=0; i--) {
if(aList[i].ToString().StartWith("A")) { end = i; break; }
}

aList.RemoveRange(start,end-start);

Если бы было слово для фильтрации, а не просто "А", то можно было бы лаконичнее..

aList.Sort();
int start = aList.IndexOf("Apple");
int end = aList.LastIndexOf("Apple");
aList.RemoveRange(start,end-start);
User avatar
Scrooge McDuck
Уже с Приветом
Posts: 5598
Joined: 28 Nov 2005 06:56

Post by Scrooge McDuck »

DP wrote:
Misha wrote:На сегодняшний день я могу только сказать что глядя с моей колокольни те, кто, скажем, приехал в 99-ом преувеличивают риск, когда говорят что и в те времена была лотерея. Мысль понятна?


Лотерея была ехать на работу где спонсор делал LC в богоизбранных штатах типа California... сколько там Linus Torvalds времени провел на данном этапе ???

DP, пардон Вам что не очевидно, что Торвальдс шел как экстроординары? При безмерной поддержке кучи компаний. А то и просто, через какое-то время, как миллионер. Зачем Вы этот пример за уши притащили?
на войне только дурак строит долгие планы, на войне есть одна задача - пережить нынешний день
User avatar
KP580BE51
Уже с Приветом
Posts: 15007
Joined: 14 Jun 2005 11:50
Location: Ukraine

Post by KP580BE51 »

Scrooge McDuck wrote:DP, пардон Вам что не очевидно, что Торвальдс шел как экстроординары? При безмерной поддержке кучи компаний. А то и просто, через какое-то время, как миллионер. Зачем Вы этот пример за уши притащили?

А все самое сложное, сделал Столлман. :х
newbee
Уже с Приветом
Posts: 434
Joined: 02 Aug 2005 10:00
Location: RU76 -> IL -> WA

Post by newbee »

Двуручник wrote:Если лист большой можно и по-замысловатее, чтоб побыстрее работало...

aList.Sort();

Это уже как минимум ln(n)*n, а предлагаемые до этого алгоритмы тупого перебора дают n ;)
newbee
Уже с Приветом
Posts: 434
Joined: 02 Aug 2005 10:00
Location: RU76 -> IL -> WA

Post by newbee »

Gennadiy wrote:Обещаное fake resume:
IPRO TECHNOLOGIES LTD. (Feb. 98 – Apr. 02)

Infinity Computers U.K
Software Consultant
Internet Payment Gateway is a secure online payment-processing system that allows Internet-based businesses to authorize process and manage credit card transactions directly from the Web site. The server sends the data through the authorization network to the appropriate card issuer's bank, using a secure connection where numbers are checked for discrepancies to prevent fraudulent misuse.
• Extensively used ASP.NET to develop the front end screens
• C# is used in ASP.Net pages to take the advantage of object oriented .Net Framework class library.
• Developed business, database objects and security objects using C# and ADO.NET.
• Used ADO.NET Disconnected Dataset model to access the Database and compared the performance with already existing Data Retrieval methods in the System.

IPRO TECHNOLOGIES LTD. (Feb. 98 – Apr. 02)

• Worked with security policies and Principal Permission security classes in .NET for encrypted signing Data, Code access and role based security checks. Created XML web service to retrieve an XML feed from an online store based on the user search criteria and display the search results to the users.
• Used .Net framework class library, built user Interface that separated Application Logic from Presentation code using Code behind pages.
• Used Server side Controls, event driven code, Tracing and Debugging features, just in time compilation, Caching Services for better performance
• Used C# to develop COM components.
• Used private as well shared assemblies.
• Used C#, VB.net for XML web services in project.
• Implemented .Net Error handling techniques
Environment: ASP.Net, ADO.net, COM, JavaScript, XML, HTML, SQL Server 2000, Visual Studio.NET, SQL
Server 2000, Windows XP/2000


Резюме fake от первого до последнего слова. Интервью это было что-то. Жаль на диктофон не записал.


чувак утверждает что занимался .NET c 98 года :)
User avatar
Двуручник
Новичок
Posts: 22
Joined: 12 Sep 2004 02:45
Location: PA, USA

Post by Двуручник »

newbee wrote:
Двуручник wrote:Если лист большой можно и по-замысловатее, чтоб побыстрее работало...

aList.Sort();

Это уже как минимум ln(n)*n, а предлагаемые до этого алгоритмы тупого перебора дают n ;)


Log(n)*n - это операций чтения (добавлено строк) и замены указателей. Время сильно зависит от конкретной реализации методов Remove и RemoveRange... Опять же речь о большом количестве записей...

RemoveRange работает быстрее чем Remove, но Sort() конечно отнимает время тоже.

В эксперименте наблюдается следующая статистика.
Использовались строки 12 символов длиной, генерированые с использованием Random class. sval += (char)rnd.Next((int)'A',(int)'Z');

100 K строк:
ArrayList.Remove i-- loop (100000 records)(): Time: 0.421897 sec.
Sort()+ArrayList.RemoveRange way (100000 records)(): Time: 0.609406 sec.

200 К строк:
ArrayList.Remove i-- loop (200000 records)(): Time: 1.687586 sec.
Sort()+ArrayList.RemoveRange way (200000 records)(): Time: 1.296941 sec.

500 К строк:
ArrayList.Remove i-- loop (500000 records)(): Time: 14.891390 sec.
Sort()+ArrayList.RemoveRange way (500000 records)(): Time: 3.656437 sec.

700 К строк:
ArrayList.Remove i-- loop (700000 records)(): Time: 31.407860 sec.
Sort()+ArrayList.RemoveRange way (700000 records)(): Time: 5.156514 sec.

Если кому интересно, могу весь тестирующий код привести (если не верите моим цифрам).
Last edited by Двуручник on 21 Jun 2006 21:20, edited 1 time in total.
User avatar
Gennadiy
Уже с Приветом
Posts: 11332
Joined: 30 Mar 2000 10:01
Location: Ice Storm Town

Post by Gennadiy »

newbee wrote:чувак утверждает что занимался .NET c 98 года :)

Точно. :mrgreen: А говорят не мелочи не надо внимания обращать.
Aquila non captat muscas
Sam Adams
Уже с Приветом
Posts: 1316
Joined: 03 Jul 2003 06:02
Location: USA

Post by Sam Adams »

Двуручник wrote:Если кому интересно, могу весь тестирующий код привести (если не верите моим цифрам).


1) Ваш код не только удаляет элементы, но еще и сортирует коллекцию;
2) Если уж взялись сравнивать, то сравните лучше свой вариант и тот, который я предложил (один проход и одна операция удаления).
User avatar
Двуручник
Новичок
Posts: 22
Joined: 12 Sep 2004 02:45
Location: PA, USA

Post by Двуручник »

Sam Adams wrote:
Двуручник wrote:Если кому интересно, могу весь тестирующий код привести (если не верите моим цифрам).


1) Ваш код не только удаляет элементы, но еще и сортирует коллекцию;
2) Если уж взялись сравнивать, то сравните лучше свой вариант и тот, который я предложил (один проход и одна операцияудаления).


1 - Согласен. Можно использовать только когда неважна позиция в коллекции.

2. Мде.. Сымаю шапку, однако. Я так понимаю, вы этот алгоритм имели в виду.

int j = 0;
for (int i = 0; i < a3.Count; i++)
{
if( ((string)a3[i]).StartsWith("A")) { a3[j++] = a3[i]; }
}
if (a3.Count != j) { a3.RemoveRange(j, a3.Count - j); }


Sam Adams method (700000 records)(): Time: 0.187508 sec.
Sam Adams method (500000 records)(): Time: 0.125006 sec.
Sam Adams method (200000 records)(): Time: 0.062503 sec.
Sam Adams method (100000 records)(): Time: 0.031251 sec.
Sam Adams
Уже с Приветом
Posts: 1316
Joined: 03 Jul 2003 06:02
Location: USA

Post by Sam Adams »

Двуручник wrote:Log(n)*n - это операций чтения/замены указателей.


Кстати - да, заменяются указатели, но сравниваются ведь значения :wink:
User avatar
Gennadiy
Уже с Приветом
Posts: 11332
Joined: 30 Mar 2000 10:01
Location: Ice Storm Town

Post by Gennadiy »

Sam Adams wrote:Кстати - да, заменяются указатели, но сравниваются ведь значения :wink:

Может к нам на работу пойдете? ;)
Aquila non captat muscas
User avatar
Flash-04
Уже с Приветом
Posts: 63430
Joined: 03 Nov 2004 05:31
Location: RU -> Toronto, ON

Post by Flash-04 »

для того чтобы у Вас работать, нужно только знать что такое указатели и как с ними работать? :lol:
User avatar
Scrooge McDuck
Уже с Приветом
Posts: 5598
Joined: 28 Nov 2005 06:56

Post by Scrooge McDuck »

Flash-04 wrote:для того чтобы у Вас работать, нужно только знать что такое указатели и как с ними работать? :lol:

Вы бы знали какое количество народу идущих на позиции STE/SDET в тот же Mайкрософт этого не знает. Все эти их задачки на манипуляцию со строками как раз и позволяют хоть как-то достучаться до мозгов кандидата на сей счет.
на войне только дурак строит долгие планы, на войне есть одна задача - пережить нынешний день

Return to “Работа и Карьера в IT”