Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

แทรกตัวเลขลงในอาร์เรย์ของตัวเลขที่เรียงลำดับ JavaScript


เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ของตัวเลขเป็นอาร์กิวเมนต์แรกและตัวเลขเดียวเป็นอาร์กิวเมนต์ที่สอง

ฟังก์ชันควรผลักตัวเลขที่ระบุเป็นอาร์กิวเมนต์ที่สองลงในอาร์เรย์โดยไม่บิดเบือนการเรียงลำดับขององค์ประกอบ

เราจำเป็นต้องทำสิ่งนี้โดยไม่สร้างอาร์เรย์อื่น

ตัวอย่าง

const arr =[6, 7, 8, 9, 12, 14, 16, 17, 19, 20, 22];const num =15;const findIndex =(arr, val) => { ให้ต่ำ =0 , สูง =arr.length; ในขณะที่ (ต่ำ <สูง) { ให้กลาง =(ต่ำ + สูง)>>> 1; ถ้า (arr [กลาง]  { ตำแหน่ง const =findIndex (arr, num); for(ให้ i =ตำแหน่ง; typeof arr[i] !=='undefined'; i++){ // การสลับโดยไม่ใช้ตัวแปรที่สาม num +=arr[i]; arr[i] =num - arr[i]; num -=arr[i]; }; arr.push(num);};insertAt(arr, num);console.log(arr);

ผลลัพธ์

สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -

<ก่อน>[ 6, 7, 8, 9, 12, 14, 15, 16, 17, 19, 20, 22]