mirror of
https://github.com/freeCodeCamp/freeCodeCamp.git
synced 2026-01-01 00:03:50 -05:00
2.6 KiB
2.6 KiB
id, title, challengeType, videoUrl, forumTopicId, dashedName
| id | title | challengeType | videoUrl | forumTopicId | dashedName |
|---|---|---|---|---|---|
| 56533eb9ac21ba0edf2244c6 | قف في الصف | 1 | https://scrimba.com/c/ca8Q8tP | 18307 | stand-in-line |
--description--
في علوم الحاسب (Computer Science) الصف أو queue هو هيكل بيانات (Data Structure) مجرد، حيث يتم حفظ العناصر بالترتيب. يمكن إضافة عناصر جديدة في الجزء الخلفي من الصف ويتم إزالة العناصر القديمة من مقدمة الصف.
--instructions--
اكتب الوظيفة nextInLine و التي تأخذ القائمة الآتية (arr) ورَقْم (item) كمعطيات.
أضف الرَقْم إلى نهاية القائمة، ثم أزل العنصر الأول من القائمة.
يجب أن تقوم وظيفة nextInLine بإرجاع العنصر الذي تمت إزالته.
--hints--
يجب أن ينتج nextInLine([], 5) رَقْم.
assert.isNumber(nextInLine([], 5));
يجب أن ينتج nextInLine([], 1) رَقْم 1
assert(nextInLine([], 1) === 1);
يجب أن ينتج nextInLine([2], 1) رَقْم 2
assert(nextInLine([2], 1) === 2);
يجب أن ينتج nextInLine([5,6,7,8,9], 1) رَقْم 5
assert(nextInLine([5, 6, 7, 8, 9], 1) === 5);
بعد nextInLine(testArr, 10), يجب أن يتكون testArr[4] من 10
nextInLine(testArr, 10);
assert(testArr[4] === 10);
--seed--
--before-user-code--
var logOutput = [];
var originalConsole = console
function capture() {
var nativeLog = console.log;
console.log = function (message) {
logOutput.push(message);
if(nativeLog.apply) {
nativeLog.apply(originalConsole, arguments);
} else {
var nativeMsg = Array.prototype.slice.apply(arguments).join(' ');
nativeLog(nativeMsg);
}
};
}
function uncapture() {
console.log = originalConsole.log;
}
capture();
--after-user-code--
uncapture();
testArr = [1,2,3,4,5];
(function() { return logOutput.join("\n");})();
--seed-contents--
function nextInLine(arr, item) {
// Only change code below this line
return item;
// Only change code above this line
}
// Setup
let testArr = [1, 2, 3, 4, 5];
// Display code
console.log("Before: " + JSON.stringify(testArr));
console.log(nextInLine(testArr, 6));
console.log("After: " + JSON.stringify(testArr));
--solutions--
let testArr = [1, 2, 3, 4, 5];
function nextInLine(arr, item) {
arr.push(item);
return arr.shift();
}