compact 小型的,袖珍的
reverse 逆转
neutral 中立的
imperial 帝国的
oppress 压迫
slope 斜坡
peculiar 独特的
Herald 预示
straightforward 简单的
cordial 热情友好的
prudent 谨慎的
desolate 荒凉的
atmosphere 大气层
vibrate 振动
restrict 限制
panorama 全景
reconcile 使和谐一致
accuracy 准确的
degenerate 退化
appointment 任命
surveillance 监视
算法
//数组反转
void swap(int *a,int *b){
int t=*a;
*a=*b;
*b=t;
}
void reverse(int*nums,int start,int end){
while(start<end){
swap(&nums[start],&nums[end]);
start++;
end--;
}
}
void rotate(int* nums, int numsSize, int k){
k%=numsSize;
reverse(nums,0,numsSize-1);
reverse(nums,0,k-1);
reverse(nums,k,numsSize-1);
}
&
取值运算符,用来取得其操作数的地址。如果操作数 x 的类型为 int,则表达式 &x 的类型是 int型指针(指向 T 的指针)。
取址运算符的操作数必须是在内存中可寻址到的地址。即该运算符只能用于函数或对象,不可以用于位字段,以及那些还未被存储类修饰符 register 声明的内容。
float x, *ptr;
ptr = &x; // 合法:使得指针ptr指向x
ptr = &(x+1); // 错误: (x+1) 不是一个左值
*
间接运算符,当已具有一个指针,并且希望获取它所引用的对象时,它的操作数必须是指针类型。如果 ptr 是指针,那么 *ptr 就是 ptr 所指向的对象或函数。如果 ptr 是一个对象指针,那么 *ptr 就是一个左值,可以当作赋值运算符左边的操作数
float x, *ptr = &x;
*ptr = 1.7; // 将1.7赋值给变量x
++(*ptr); // 并将变量x的值加1