Данный отчёт сгенерирован 10.02.2023 18:21:31 UTC.
HTML версия (этот сайт) сгенерирован 10.02.2023 18:21:38 UTC.
Коммит: [bfeb65b9] add automatic zip creation 10.02.2023 18:21:31
HTML версия (этот сайт) сгенерирован 10.02.2023 18:21:38 UTC.
Коммит: [bfeb65b9] add automatic zip creation 10.02.2023 18:21:31
Задача: Злиття Впорядкованих Масивів
10.02.2023 18:21:31
Описание: Слить два упорядоченных массива чисел в один при помощи функции merge(),
которая получает исходные массивы и возвращает новый массив - результат слияния.
Не использовать метод sort.
Злити два впорядкованих масиву чисел за допомогою функції merge(),
яка отримує вихідні масиви та повертає новий масив – результат злиття.
Не використовувати метод sort.
10.02.2023 18:21:31
Решений: 32
10.02.2023 18:21:31
Злиття Впорядкованих Масивів
10.02.2023 18:21:31
function merge(a1, a2, index = 0) {
if (a2.length === 0) {
return a1;
}
if (index > a1.length) {
a1.splice(index, 0, ...a2);
a2 = [];
}
if (a2[0] < a1[index]) {
a1.splice(index, 0, a2.shift());
}
return merge(a1, a2, index + 1);
}
function merge(a1, a2) {
const array3 = a1.concat(a2);
for(let i = 0; i < array3.length; i++){
for(let k = 0; k < array3.length; k++){
if(array3[i] > array3[k]){
var gold = array3[k]
array3[k]=array3[i]
array3[i]=gold
}
}
}
return array3.reverse()
}
function merge(a1, a2) {
let a3 = [ ];
let i = 0;
let k = 0;
let size1_2 = a1.length + a2.length;
while (size1_2 > a3.length) {
for ( ; a1[i] <= a2[k] && i < a1.length; i++) {
a3.push (a1[i]);
}
for ( ; a2[k] <= a1[i] && k < a2.length; k++) {
a3.push (a2[k]);
}
if (i == a1.length) {
while (size1_2 > a3.length) {
a3.push (a2[k++]);
}
}
else if (k == a2.length) {
while (size1_2 > a3.length) {
a3.push (a1[i++]);
}
}
}
return a3;
}
function merge(a1, a2){
let a = a1.concat(a2);
let min = Infinity;
let s = [];
for (j = 0; j < a.length; j++) {
for (let i = 0; i < a.length; i++) {
if (a[i] < min ) {
min = a[i];
minIndex = i;
}
}
a[minIndex] = Infinity;
s.push(min);
min = Infinity;
}
return s;
}
function merge(arr1, arr2) {
let result = [];
let i = 0;
let j = 0;
while (i < arr1.length && j < arr2.length) {
if (arr1[i] < arr2[j]) {
result.push(arr1[i]);
i++;
} else {
result.push(arr2[j]);
j++;
}
}
while (i < arr1.length) {
result.push(arr1[i]);
i++;
}
while (j < arr2.length) {
result.push(arr2[j]);
j++;
}
return result;
}
function merge(a1, a2) {
let res = [];
let length = a1.length + a2.length;
while(res.length < length){
if(a1[0]>a2[0] || a1.length == 0){
res.push(a2[0]);
a2 = a2.slice(1);
}
else{
res.push(a1[0]);
a1 = a1.slice(1);
}
}
return res;
}
function merge(a1, a2){
let [iterable2, iterable1]=a1.length>a2.length?[a1,a2]:[a2,a1]
for(let i=0;i< iterable1.length;i++){
if (iterable2[0]>=iterable1[i]){
iterable2.splice(0,0,iterable1[i])
continue
}
for(let j=1; j<=iterable2.length;j++){
if(j===iterable2.length||iterable1[i]<=iterable2[j]){
iterable2.splice(j,0,iterable1[i])
break
}
}
}
return iterable2
}
function merge(arr1, arr2) {
let mergedArr = [];
let i = 0;
let j = 0;
while(i < arr1.length && j < arr2.length) {
if(arr1[i] < arr2[j]){
mergedArr.push(arr1[i]);
i++;
} else {
mergedArr.push(arr2[j]);
j++;
}
}
while(i < arr1.length) {
mergedArr.push(arr1[i]);
i++;
}
while(j < arr2.length){
mergedArr.push(arr2[j]);
j++;
}
return mergedArr;
}
function merge(a1, a2) {
let r = Array(a1.length + a2.length);
let i = 0, j = 0;
while(i < a1.length || j < a2.length) {
if(i >= a1.length) {
r[i + j] = a2[j];
j += 1;
} else if(j >= a2.length) {
r[i + j] = a1[i];
i += 1;
} else {
if(a1[i] < a2[j]) {
r[i + j] = a1[i];
i += 1;
} else {
r[i + j] = a2[j];
j += 1;
}
}
}
return r;
}
function merge(a1, a2) {
const myArray = [...a1, ...a2];
function bubbleSort(arr) {
for(let j=0;j< arr.length;j++) {
for(let i = 0; i < arr.length; i++) {
if(arr[i]>arr[i+1] && (i+1 < arr.length)) {
var temp = arr[i];
arr[i] = arr[i+1];
arr[i+1] = temp;
}
}
}
return arr;
}
return bubbleSort(myArray)
}
function merge(a1, a2){
a1 = a1.concat(a2);
let res = [];
for (;a1.length;){
res.push(a1.splice(a1.indexOf(Math.min(...a1)),1))
}
return res.flat();
}
function merge(a1, a2){
let newarr = [...a1,...a2]
let result = []
for (;newarr.length;) { result.push(newarr.splice(newarr.indexOf(Math.min(...newarr)),1)[0])}
return result
}
function merge(a1, a2)
{
let a3 = [];
const n = a1.length + a2.length;
for (let i = 0; i < n; i++)
{
let min1 = Math.min(...a1);
let min2 = Math.min(...a2);
let min = Math.min(min1, min2);
a3.push(min);
if (min == a1[0])
a1.splice(0, 1);
else
a2.splice(0, 1);
}
return a3;
}
function merge(a1, a2) {
let arr = []
for (i = 0; i < a1.length; i++) arr.push(a1[i])
for (i = 0; i < a2.length; i++) arr.push(a2[i])
//console.log(arr.length)
for (var i = 0, endI = arr.length - 1; i < endI; i++) {
for (var j = 0, endJ = endI - i; j < endJ; j++) {
if (arr[j] > arr[j + 1]) {
var swap = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = swap;
}
}
}
return arr;
}
function merge(a1, a2) {
let arr = a1.concat(a2);
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
return arr
}
function merge(a1, a2) {
for(e of a2) {
let f = false;
for(let i = 0; i < a1.length; i++) {
if(e < a1[i]) {
a1.splice(i, 0, e);
f = true;
break;
}
}
if(!f)
a1.push(e);
}
return a1;
}
function merge (a1, a2) {
let arr = [...a1, ...a2];
for (let i = 0; i < arr.length - 1; i++) {
for (j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
let temp = arr[i];
arr[i] = arr[j];
arr[j] = temp
}
}
}
return arr
}
function merge(a1, a2) {
let arr = a1.concat(a2);
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
return arr
}
function merge(a1, a2)
{
let array = [];
for(;a1.length>0&&a2.length>0;)
{
if(a1[0]<=a2[0])
{
array.push(a1[0])
a1.shift();
}
else
{
array.push(a2[0])
a2.shift();
}
}
for(let i = 0;i< a2.length;i++)
{
array.push(a2[i]);
}
for(let i = 0;i< a1.length;i++)
{
array.push(a1[i]);
}
return array;
}
function merge(a1, a2){
let res = a1.concat(a2);
let temp;
for(let k = 0; k < res.length; k++){
for(let i = 0; i < res.length-1; i++){
if(res[i] > res[i+1]){
temp = res[i];
res[i] = res[i+1];
res[i+1] = temp;
}
}
}
return res;
}
function merge(a1, a2) {
let arr=a1.concat(a2);
for (let i=0; i< arr.length; i++) {
for (let j=i+1; j< arr.length; j++) {
if (arr[i]>arr[j]) {
b=arr[i];
arr[i]=arr[j];
arr[j]=b;
}
}
}
return (arr);
}
function merge(a1, a2){
let result = []
while(a1.length != 0 && a2.length !=0){
if(a1[0]<=a2[0]){
result.push(a1[0])
a1.splice(0,1)
}
else{
result.push(a2[0])
a2.splice(0,1)
}
}
return result.concat(a1,a2)
}
function merge(a1, a2){
a1 = a1.concat(a2)
for(var x = 0 ;x < a1.length ; x++){
for(var y = 0 ; y< a1.length-x-1;y++){
if(a1[y]>a1[y+1]){
[a1[y] , a1[y+1]] = [a1[y+1] , a1[y]]
}
}
}
return a1
}
function merge(arr1, arr2) {
let newArr = [];
let i = 0;
let j = 0;
while (i < arr1.length && j < arr2.length) {
if (arr1[i] < arr2[j]) {
newArr.push(arr1[i]);
i++;
} else {
newArr.push(arr2[j]);
j++;
}
}
while (i < arr1.length) {
newArr.push(arr1[i]);
i++;
}
while (j < arr2.length) {
newArr.push(arr2[j]);
j++;
}
return newArr;
}
function merge(a1, a2) {
let answ = [];
let i = 0,
g = 0;
if (a1.length == 0) return a2;
if (a2.length == 0) return a1;
while (i < a1.length || g < a2.length) {
if (a1[i] <= a2[g]) {
answ.push(a1[i]);
i++;
} else {
answ.push(a2[g]);
g++;
}
if (i == a1.length) {
while (g < a2.length) {
answ.push(a2[g]);
g++;
}
break;
}
if (g == a2.length) {
while (i < a1.length) {
answ.push(a1[i]);
i++;
}
break;
}
}
return answ;
}
function merge(a1, a2)
{
res = [...a1, ...a2]
for(let i=0; i< res.length; i++)
{
for(let j = i+1; j< res.length; j++)
{
if(res[i]>res[j])
{
let temp = res[i]
res[i] = res[j]
res[j] = temp
}
}
}
return res
}
function merge(a1, a2) {
let arr = a1.concat(a2);
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
return arr;
}
function merge(a1, a2) {
let arr = a1.concat(a2);
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
return arr
}
function merge(a1, a2){
let mix = a1.concat(a2);
return bubbleSort(mix);
}
function bubbleSort(arr){
for (let i = 0; i < arr.length-1; i++){
for (let j = 0; j < arr.length-1-i; j++){
if (arr[j+1] < arr[j]){
let t = arr[j+1];
arr[j+1] = arr[j];
arr[j] = t;
}
}
}
return arr;
}
function merge(a1, a2){
let res = []
let left1 = 0
let left2 = 0
if (!a1.length) return a2
if (!a2.length) return a1
for (let el1 of a1){
for (left2; left2 < a2.length; ++left2){
if (el1 <= a2[left2]){
res.push(el1)
left1++
break
} else {
res.push(a2[left2])
}
}
}
return res.concat(a2.slice(left2)).concat(a1.slice(left1))
}
function merge(a1, a2) {
var arr = [...a1, ...a2];
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
return arr;
}
function merge(a1, a2) {
let arr = a1.concat(a2);
let c;
for (let i = 0; i < arr.length;i++) {
if (arr[i] > arr[i + 1]) {
c = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = c;
}
}
for (let i = 0; i < arr.length;i++) {
if (arr[i] > arr[i + 1]) {
c = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = c;
}
}
return arr;
}
if (a2.length === 0) {
return a1;
}
if (index > a1.length) {
a1.splice(index, 0, ...a2);
a2 = [];
}
if (a2[0] < a1[index]) {
a1.splice(index, 0, a2.shift());
}
return merge(a1, a2, index + 1);
}
const array3 = a1.concat(a2);
for(let i = 0; i < array3.length; i++){
for(let k = 0; k < array3.length; k++){
if(array3[i] > array3[k]){
var gold = array3[k]
array3[k]=array3[i]
array3[i]=gold
}
}
}
return array3.reverse()
}
let a3 = [ ];
let i = 0;
let k = 0;
let size1_2 = a1.length + a2.length;
while (size1_2 > a3.length) {
for ( ; a1[i] <= a2[k] && i < a1.length; i++) {
a3.push (a1[i]);
}
for ( ; a2[k] <= a1[i] && k < a2.length; k++) {
a3.push (a2[k]);
}
if (i == a1.length) {
while (size1_2 > a3.length) {
a3.push (a2[k++]);
}
}
else if (k == a2.length) {
while (size1_2 > a3.length) {
a3.push (a1[i++]);
}
}
}
return a3;
}
let a = a1.concat(a2);
let min = Infinity;
let s = [];
for (j = 0; j < a.length; j++) {
for (let i = 0; i < a.length; i++) {
if (a[i] < min ) {
min = a[i];
minIndex = i;
}
}
a[minIndex] = Infinity;
s.push(min);
min = Infinity;
}
return s;
}
let result = [];
let i = 0;
let j = 0;
while (i < arr1.length && j < arr2.length) {
if (arr1[i] < arr2[j]) {
result.push(arr1[i]);
i++;
} else {
result.push(arr2[j]);
j++;
}
}
while (i < arr1.length) {
result.push(arr1[i]);
i++;
}
while (j < arr2.length) {
result.push(arr2[j]);
j++;
}
return result;
}
let res = [];
let length = a1.length + a2.length;
while(res.length < length){
if(a1[0]>a2[0] || a1.length == 0){
res.push(a2[0]);
a2 = a2.slice(1);
}
else{
res.push(a1[0]);
a1 = a1.slice(1);
}
}
return res;
}
let [iterable2, iterable1]=a1.length>a2.length?[a1,a2]:[a2,a1]
for(let i=0;i< iterable1.length;i++){
if (iterable2[0]>=iterable1[i]){
iterable2.splice(0,0,iterable1[i])
continue
}
for(let j=1; j<=iterable2.length;j++){
if(j===iterable2.length||iterable1[i]<=iterable2[j]){
iterable2.splice(j,0,iterable1[i])
break
}
}
}
return iterable2
}
let mergedArr = [];
let i = 0;
let j = 0;
while(i < arr1.length && j < arr2.length) {
if(arr1[i] < arr2[j]){
mergedArr.push(arr1[i]);
i++;
} else {
mergedArr.push(arr2[j]);
j++;
}
}
while(i < arr1.length) {
mergedArr.push(arr1[i]);
i++;
}
while(j < arr2.length){
mergedArr.push(arr2[j]);
j++;
}
return mergedArr;
}
let r = Array(a1.length + a2.length);
let i = 0, j = 0;
while(i < a1.length || j < a2.length) {
if(i >= a1.length) {
r[i + j] = a2[j];
j += 1;
} else if(j >= a2.length) {
r[i + j] = a1[i];
i += 1;
} else {
if(a1[i] < a2[j]) {
r[i + j] = a1[i];
i += 1;
} else {
r[i + j] = a2[j];
j += 1;
}
}
}
return r;
}
const myArray = [...a1, ...a2];
function bubbleSort(arr) {
for(let j=0;j< arr.length;j++) {
for(let i = 0; i < arr.length; i++) {
if(arr[i]>arr[i+1] && (i+1 < arr.length)) {
var temp = arr[i];
arr[i] = arr[i+1];
arr[i+1] = temp;
}
}
}
return arr;
}
return bubbleSort(myArray)
}
a1 = a1.concat(a2);
let res = [];
for (;a1.length;){
res.push(a1.splice(a1.indexOf(Math.min(...a1)),1))
}
return res.flat();
}
let newarr = [...a1,...a2]
let result = []
for (;newarr.length;) { result.push(newarr.splice(newarr.indexOf(Math.min(...newarr)),1)[0])}
return result
}
{
let a3 = [];
const n = a1.length + a2.length;
for (let i = 0; i < n; i++)
{
let min1 = Math.min(...a1);
let min2 = Math.min(...a2);
let min = Math.min(min1, min2);
a3.push(min);
if (min == a1[0])
a1.splice(0, 1);
else
a2.splice(0, 1);
}
return a3;
}
let arr = []
for (i = 0; i < a1.length; i++) arr.push(a1[i])
for (i = 0; i < a2.length; i++) arr.push(a2[i])
//console.log(arr.length)
for (var i = 0, endI = arr.length - 1; i < endI; i++) {
for (var j = 0, endJ = endI - i; j < endJ; j++) {
if (arr[j] > arr[j + 1]) {
var swap = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = swap;
}
}
}
return arr;
}
let arr = a1.concat(a2);
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
return arr
}
for(e of a2) {
let f = false;
for(let i = 0; i < a1.length; i++) {
if(e < a1[i]) {
a1.splice(i, 0, e);
f = true;
break;
}
}
if(!f)
a1.push(e);
}
return a1;
}
let arr = [...a1, ...a2];
for (let i = 0; i < arr.length - 1; i++) {
for (j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
let temp = arr[i];
arr[i] = arr[j];
arr[j] = temp
}
}
}
return arr
}
let arr = a1.concat(a2);
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
return arr
}
{
let array = [];
for(;a1.length>0&&a2.length>0;)
{
if(a1[0]<=a2[0])
{
array.push(a1[0])
a1.shift();
}
else
{
array.push(a2[0])
a2.shift();
}
}
for(let i = 0;i< a2.length;i++)
{
array.push(a2[i]);
}
for(let i = 0;i< a1.length;i++)
{
array.push(a1[i]);
}
return array;
}
let res = a1.concat(a2);
let temp;
for(let k = 0; k < res.length; k++){
for(let i = 0; i < res.length-1; i++){
if(res[i] > res[i+1]){
temp = res[i];
res[i] = res[i+1];
res[i+1] = temp;
}
}
}
return res;
}
let arr=a1.concat(a2);
for (let i=0; i< arr.length; i++) {
for (let j=i+1; j< arr.length; j++) {
if (arr[i]>arr[j]) {
b=arr[i];
arr[i]=arr[j];
arr[j]=b;
}
}
}
return (arr);
}
let result = []
while(a1.length != 0 && a2.length !=0){
if(a1[0]<=a2[0]){
result.push(a1[0])
a1.splice(0,1)
}
else{
result.push(a2[0])
a2.splice(0,1)
}
}
return result.concat(a1,a2)
}
a1 = a1.concat(a2)
for(var x = 0 ;x < a1.length ; x++){
for(var y = 0 ; y< a1.length-x-1;y++){
if(a1[y]>a1[y+1]){
[a1[y] , a1[y+1]] = [a1[y+1] , a1[y]]
}
}
}
return a1
}
let newArr = [];
let i = 0;
let j = 0;
while (i < arr1.length && j < arr2.length) {
if (arr1[i] < arr2[j]) {
newArr.push(arr1[i]);
i++;
} else {
newArr.push(arr2[j]);
j++;
}
}
while (i < arr1.length) {
newArr.push(arr1[i]);
i++;
}
while (j < arr2.length) {
newArr.push(arr2[j]);
j++;
}
return newArr;
}
let answ = [];
let i = 0,
g = 0;
if (a1.length == 0) return a2;
if (a2.length == 0) return a1;
while (i < a1.length || g < a2.length) {
if (a1[i] <= a2[g]) {
answ.push(a1[i]);
i++;
} else {
answ.push(a2[g]);
g++;
}
if (i == a1.length) {
while (g < a2.length) {
answ.push(a2[g]);
g++;
}
break;
}
if (g == a2.length) {
while (i < a1.length) {
answ.push(a1[i]);
i++;
}
break;
}
}
return answ;
}
{
res = [...a1, ...a2]
for(let i=0; i< res.length; i++)
{
for(let j = i+1; j< res.length; j++)
{
if(res[i]>res[j])
{
let temp = res[i]
res[i] = res[j]
res[j] = temp
}
}
}
return res
}
let arr = a1.concat(a2);
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
return arr;
}
let arr = a1.concat(a2);
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
return arr
}
let mix = a1.concat(a2);
return bubbleSort(mix);
}
function bubbleSort(arr){
for (let i = 0; i < arr.length-1; i++){
for (let j = 0; j < arr.length-1-i; j++){
if (arr[j+1] < arr[j]){
let t = arr[j+1];
arr[j+1] = arr[j];
arr[j] = t;
}
}
}
return arr;
}
let res = []
let left1 = 0
let left2 = 0
if (!a1.length) return a2
if (!a2.length) return a1
for (let el1 of a1){
for (left2; left2 < a2.length; ++left2){
if (el1 <= a2[left2]){
res.push(el1)
left1++
break
} else {
res.push(a2[left2])
}
}
}
return res.concat(a2.slice(left2)).concat(a1.slice(left1))
}
var arr = [...a1, ...a2];
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
return arr;
}
let arr = a1.concat(a2);
let c;
for (let i = 0; i < arr.length;i++) {
if (arr[i] > arr[i + 1]) {
c = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = c;
}
}
for (let i = 0; i < arr.length;i++) {
if (arr[i] > arr[i + 1]) {
c = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = c;
}
}
return arr;
}