float_mul2 探討
IEEE 754, float is single precision. Assume 32-bit
float float_mul2(float x)
{
// using bitwise operation, no mul
int a = *((int*)&x);
int b = *((int*)&x);
a = (a & 0x7F800000) >> 23;
a++;
contributed by < Petakuo >
浮點數乘法的實作探討
float_mul2 探討
IEEE 754, float is single precision. Assume 32-bit
float float_mul2(float x)
{
// using bitwise operation, no mul
int a = *((int*)&x);
contributed by < Petakuo >
第三週測驗題
測驗1
版本一
首先,利用 log2() 函式找到最高位的位元,接著由該位元開始測試,逐漸逼近答案,而逼近的方法為利用 if 函示判斷 (result + a) 的平方是否大於被要求開平方的值 N ,如果有,則繼續往低位進行逼近,如果沒有,則將原本的答案加上 a 進行更新,並同樣往低位進行逼近,如此做到 a 為 0 時即可得到 N 的平方根。
版本二
int msb = 0;
int n = N;
contributed by < Petakuo >
第一週測驗題
測驗1
運作原理
定義變數 L 和 R 去紀錄整個鏈結串列完成一次排序需要交換的數量, L 和 R 分別會從左和右掃描,將小於和大於 pivot 的數量紀錄,並以 swap 對 pivot 、 L 及 R 進行順序交換,最後利用 stack 來模擬遞迴,而遞迴主要是在做合併的效果。
題目解析
node_t *list_tail(node_t **left)
{