-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathinput_questions.txt
More file actions
63 lines (43 loc) · 3.32 KB
/
input_questions.txt
File metadata and controls
63 lines (43 loc) · 3.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
1) Оцените свой уровень знания следующих языков по шкале:
0 - не знаю или знаю поверхностно
1 - знаю достаточно хорошо (стандарт + стандартная библиотека не вызывают вопросов)
2 - знаю очень хорошо ( для с++ - читал и свободно понимаю Александреску)
C++, Java, Ruby, Haskell, Lisp(диалект?), Erlang, Javascript, Python
2) Оцените свой уровень знания Linux и Windows по шкале:
0 - не знаю или знаю поверхностно
1 - знаю достаточно хорошо
2 - знаю очень хорошо (какими способами в линуксе можно полностью безопасно
исполнить, возможно, вредоносный бинарный файл)
3) С чем из следующего вы хорошо знакомы:
Итератор, функтор, замыкание, каррирование, динамическая типизация.
4) Почему метод pop в С++ не возвращет удаляемый элемент?
5) Какие из следующих кодировок юникодные?
ASCII, koi8-r, cp1251, utf-8, UCS4
6) Какие ошибки(в т.ч. проектирования и усложняющие поддержку) допущенны в следующих функциях:
// эта функция отправляет сообщение
// сначала записывается int - длинна сообщения, затем сообщение
int send_message(int sockfd, char * buffer, int msg_len)
{
if ( -1 == send(sockfd, &msg_len, sizeof(int), 0) )
{
return -1;
}
return send(sockfd, buffer, msg_len, 0);
}
// эта функция вычитывает сообщение из сокета
// в канале сначала идет int - длинна сообщения, затем сообщение
int get_message(int sockfd, char * buffer)
{
int msg_len;
if ( -1 == recv(sockfd, &msg_len, sizeof(int)) )
{
return -1;
}
return recv(sockfd, buffer, msg_len);
}
Будут ли они работать корректно, если принимающая и передающая стороны запущенны в разных процессах на одной машине?
get_message используется для вычитывания сообщения, пересылаемого send_message.
7) Какие из следующих примитивов вы бы рекомендовали использовали для написания надежный параллельных программ:
Блокировка, критическая секция, разделяемая память, очередь сообщений, сигнальная переменная, барьер?
8) Какие проблемы может вызвать отмена потока?
9) Может ли алгоритм с ассимптотикой O(n * log(n)) быть медленне, чем алгоритм с ассимптотикой O(n * n)?