Initial data commit

This commit is contained in:
Ingy döt Net 2023-07-01 11:58:00 -04:00
parent 72d218235f
commit f23f22d71c
199087 changed files with 3378941 additions and 0 deletions

View file

@ -0,0 +1,16 @@
var haystack = ['Zig', 'Zag', 'Wally', 'Ronald', 'Bush', 'Krusty', 'Charlie', 'Bush', 'Bozo']
var needles = ['Bush', 'Washington']
for (var i in needles) {
var found = false;
for (var j in haystack) {
if (haystack[j] == needles[i]) {
found = true;
break;
}
}
if (found)
print(needles[i] + " appears at index " + j + " in the haystack");
else
throw needles[i] + " does not appear in the haystack"
}

View file

@ -0,0 +1,18 @@
for each (var needle in needles) {
var idx = haystack.indexOf(needle);
if (idx == -1)
throw needle + " does not appear in the haystack"
else
print(needle + " appears at index " + idx + " in the haystack");
}
// extra credit
for each (var elem in haystack) {
var first_idx = haystack.indexOf(elem);
var last_idx = haystack.lastIndexOf(elem);
if (last_idx > first_idx) {
print(elem + " last appears at index " + last_idx + " in the haystack");
break
}
}

View file

@ -0,0 +1,47 @@
(function () {
function findIndex(fnPredicate, list) {
for (var i = 0, lng = list.length; i < lng; i++) {
if (fnPredicate(list[i])) {
return i;
}
}
return Error("not found");
};
// DEFINING A PARTICULAR TYPE OF SEARCH MATCH
function matchCaseInsensitive(s, t) {
return s.toLowerCase() === t.toLowerCase();
}
var lstHaystack = [
'Zig', 'Zag', 'Wally', 'Ronald', 'Bush',
'Krusty', 'Charlie', 'Bush', 'Bozo'
],
lstReversed = lstHaystack.slice(0).reverse(),
iLast = lstHaystack.length - 1,
lstNeedles = ['bush', 'washington'];
return {
'first': lstNeedles.map(function (s) {
return [s, findIndex(function (t) {
return matchCaseInsensitive(s, t);
},
lstHaystack)];
}),
'last': lstNeedles.map(function (s) {
var varIndex = findIndex(function (t) {
return matchCaseInsensitive(s, t);
},
lstReversed);
return [
s,
typeof varIndex === 'number' ?
iLast - varIndex : varIndex
];
})
}
})();

View file

@ -0,0 +1,22 @@
{
"first": [
[
"bush",
4
],
[
"washington",
"Error: not found"
]
],
"last": [
[
"bush",
7
],
[
"washington",
"Error: not found"
]
]
}