【C语言Coding】第六天
原创
©著作权归作者所有:来自51CTO博客作者小样小响的原创作品,请联系作者获取转载授权,否则将追究法律责任
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;
}
bool isPowerOfTwo(int n){
if(n <= 0) return false;
int i = 0;
while(i < 32){
if(pow(2,i++) == n) return true;
}
return false;
}
bool isPowerOfFour(int n){
if(n <= 0) return false;
int i = 0;
while(i < 32){
if(pow(4,i++) == n) return true;
}
return false;
}
int minOperations(int n){
int sum = 0;int i = 0;
while(i<n){
sum+= abs((n-(2*i+1)));
i++;
}
return sum/2;
}
/**
* 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;
}