คำถามติดแท็ก discrete-mathematics

10
คุณคำนวณ log ฐาน 2 ใน Java สำหรับจำนวนเต็มได้อย่างไร
ฉันใช้ฟังก์ชันต่อไปนี้เพื่อคำนวณ log ฐาน 2 สำหรับจำนวนเต็ม: public static int log2(int n){ if(n <= 0) throw new IllegalArgumentException(); return 31 - Integer.numberOfLeadingZeros(n); } มันมีประสิทธิภาพที่ดีที่สุด? มีคนรู้ว่าฟังก์ชั่น J2SE API พร้อมสำหรับวัตถุประสงค์นั้นหรือไม่? UPD1 น่าแปลกใจสำหรับฉันเลขคณิตจุดลอยตัวดูเหมือนจะเร็วกว่าเลขคณิตจำนวนเต็ม UPD2 เนื่องจากความคิดเห็นฉันจะดำเนินการตรวจสอบอย่างละเอียดมากขึ้น UPD3 ฟังก์ชันเลขจำนวนเต็มของฉันเร็วกว่า Math.log (n) / Math.log (2) 10 เท่า
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.