7+ лет опыта во фронтенде | Собеседование frontend #10

7+ лет опыта во фронтенде | Собеседование frontend #10

FRONTENDIYA - Веб разработка

8 месяцев назад

15,085 Просмотров

Ссылки и html тэги не поддерживаются


Комментарии:

@frontendiya
@frontendiya - 03.12.2023 18:36

Мы занимаемся индвидуальным менторством для фронтов, подробнее можно узнать у нашего менеджера в тг @frontendiya_manager

Ответить
@overmvp4593
@overmvp4593 - 22.01.2024 22:23

Покажу свое решение:

const countDuplicates = (str) => {
const hash = {};
let res = "";

for (let i = 0; i < str.length; i++) {
const el = str[i];
if (Object.hasOwn(hash, el)) {
hash[el]++;
} else {
hash[el] = 1;
}
}
for (let key in hash) {
res += key;
res += hash[key];
}

return res;
};

Ответить
@user-ek9mp1nw5s
@user-ek9mp1nw5s - 18.01.2024 19:31

20 летние чуваки берут интервью у 30 летнего чувака с 10 летним опытом который решает задачи 3 урока JS и то еле справляется + невнимательность высшего уровня.
Неужели за 10 лет, хорошо, за 7, нельзя было в начальники выбиться 😮
Теперь понятно почему у нас сфера IT в таком состоянии

Ответить
@user-nd7th3bv8v
@user-nd7th3bv8v - 13.01.2024 06:02

задача убрать символы решается проще)
var input = 'abbcdafec';
var output = [...new Set('abbcdafec')].join('');


console.log('input: ' + input);
console.log('output: ' + output);
///
input: abbcdafec
output: abcdfe

Ответить
@EBreyful
@EBreyful - 05.01.2024 00:07

Как и написал @inqvisitor3722 решение второй задачи не оптимальное за счет unshift и постоянного перекладывания массива
Вот более оптимальное если кому интересно
var sortedSquares = function(nums) {
let l = 0, r = nums.length - 1, res = new Array(nums.length);

for(let i = nums.length - 1; i >= 0; i--) {
if(Math.abs(nums[l]) > Math.abs(nums[r])) {
res[i] = nums[l] ** 2
++l;
} else {
res[i] = nums[r] ** 2
--r;
}
}

return res;
};

Ответить
@topsy_kreds
@topsy_kreds - 24.12.2023 12:11

тайм-коды уже стали такой обыденностью, что без них смотреть видео не хочется...

Ответить
@inqvisitor3722
@inqvisitor3722 - 08.12.2023 21:23

O(N), по памяти O(1)

решил за 10 мин, при наблюдателях конечно сложнее сконцентрироваться

function zip(str){
let start = 0;
let end = 0;
let currentSymbol = str[0];
let result = '';

for(let i = 1; i < str.length+1; i++){
if(str[i] === currentSymbol){
end++;
} else {
const dif = end-start;
if (dif <= 1){
result += currentSymbol.repeat(dif +1);
} else {
result += currentSymbol + '' + (dif + 1);
}
start = end;
currentSymbol = str[i]
}
}
return result;
}

Ответить
@DrZlo19
@DrZlo19 - 08.12.2023 11:15

Менторство от 14-летних сеньоров с 10 годами опыта

Ответить
@dimitritarasenko9960
@dimitritarasenko9960 - 05.12.2023 01:20

Это для школьного проекта кто-то интервью берёт? Ничего не понимаю.

Ответить
@IT-therapy
@IT-therapy - 03.12.2023 23:49

Ребзя, ну отсобесьте меня, я джун, войтишник, с диким синдромом самозванца, начал изучать фронт с нуля 01.10.22, работаю с 1.05.2023

Ответить
@alexandroppolus
@alexandroppolus - 03.12.2023 23:43

Первый паззл решается в одну строку: const reduceStr = (str) => str.replace(/(.)\1+/g, (m, c) => c + m.length);

Вторую можно решить за O(N), а чувак сделал O(N^2) на ровном месте из-за гребаных аншифтов.

Ответить
@aleksandrchadaev6165
@aleksandrchadaev6165 - 03.12.2023 20:52

Очень странное собеседование для уровня 7+ лет. 3 базовых вопроса, 2 задачки (1я уровня джун/трини) + разговор за ̶ж̶и̶з̶н̶ь̶ стек - ну такое. Собеседуемый про web workers упоминает, логично было бы туда капнуть, узнать про service workers (в конце конечно было, но уровень знаний собеседуемого в этой теме не раскрыт), например и тд. Ощущение после просмотра, как будто немного не дотянули собещедующие ребята. Не сочтите за токсичность, делюсь впечатлением после просмотра.

Ответить