【例题1】367. 有效的完全平方数 - 力扣(LeetCode)

bool isPerfectSquare(int num){
    if (num == 1) return true;
    int left = 1;
    int right = num>>1;
    long mid;
    while(left<= right){
        mid = left + ((right-left+1)>>1);
        if(mid * mid == num) return true;
        if(mid * mid < num) left = mid + 1;
        if(mid * mid > num) right = mid - 1;
    }
    return false;
}

【例题2】231. 2 的幂 - 力扣(LeetCode)

bool isPowerOfTwo(int n){
    if(n <= 0) return false;
    int i = 0;
    while(i < 32){
        if(pow(2,i++) == n) return true;
    }
    return false;
}

【例题3】342. 4的幂 - 力扣(LeetCode)

bool isPowerOfFour(int n){
    if(n <= 0) return false;
    int i = 0;
    while(i < 32){
        if(pow(4,i++) == n) return true;
    }
    return false;
}

【例题4】1551. 使数组中所有元素相等的最小操作数 - 力扣(LeetCode)

int minOperations(int n){
    int sum = 0;int i = 0;
    while(i<n){
      sum+= abs((n-(2*i+1)));
      i++;
    }
    return sum/2;
}

【例题5】面试题 02.03. 删除中间节点 - 力扣(LeetCode)

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     struct ListNode *next;
 * };
 */
void deleteNode(struct ListNode* node) {
    while(node->next->next != NULL){
        node->val = node->next->val;
        node = node->next;
    }
    node->val = node->next->val;
    node->next = NULL;
}