e******g 发帖数: 51 | 1 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。
对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题
1. 大数+1
这题好常见。。。
2. 对数组排序,使得a1<=a2>=a3<=a4>=...
也是很简单的O(n),注意写的时候不用swap元素。。。
Google doc写的,大概花了30分钟,然后问了下有什么问题。。。
嗯,这周要去A家on-site,求bless~~ |
l****o 发帖数: 315 | |
e******g 发帖数: 51 | 3
哦,可能是我多想了,一开始我想交换相邻元素。。。后来发现用不着。。维护一个指
针保存当前pivot就行了
【在 l****o 的大作中提到】 : 不用swap元素是什么意思。。
|
J****3 发帖数: 427 | |
e******g 发帖数: 51 | 5
嗯,貌似见过,不记得了,我贴下代码攒下人品:)
int[] sortArray(int[] s){
int n = s.length;
boolean flag = true;
int current = s[0];
for (int i = 0; i < n-1; i++){
if (((flag) &&(current > s[i+1])) || ((!flag) && (current < s[i+1])){
s[i] = s[i+1];
current = s[i];
}
else{
s[i] = current;
current = s[i + 1];
}
flag = !flag;
}
s[n-1] = current;
return s;
}
【在 J****3 的大作中提到】 : Bless~ 第二题貌似之前有人电面的原题吧
|
l*n 发帖数: 529 | 6 看来是个一维dp。没看你code之前还从没往这个方面想过
)){
【在 e******g 的大作中提到】 : : 嗯,貌似见过,不记得了,我贴下代码攒下人品:) : int[] sortArray(int[] s){ : int n = s.length; : boolean flag = true; : int current = s[0]; : for (int i = 0; i < n-1; i++){ : if (((flag) &&(current > s[i+1])) || ((!flag) && (current < s[i+1])){ : s[i] = s[i+1]; : current = s[i];
|
P*******r 发帖数: 210 | 7 谢谢分享,有个bug,
input {1,2,3}
output {1,3,3}; |
t*********7 发帖数: 255 | 8 这个不对吧...7,6,8过不了啊,CUR不是永远指向没用的那么,7就会MIS |
e******g 发帖数: 51 | 9
嗯,中间写错了,我改改
【在 P*******r 的大作中提到】 : 谢谢分享,有个bug, : input {1,2,3} : output {1,3,3};
|
s****n 发帖数: 147 | 10 应该是只有
s[i] = s[i+1];
没有
current = s[i];
吧……
【在 e******g 的大作中提到】 : : 嗯,中间写错了,我改改
|
|
|
e******g 发帖数: 51 | 11
嗯,是的,这逻辑太容易写错了。。。
【在 s****n 的大作中提到】 : 应该是只有 : s[i] = s[i+1]; : 没有 : current = s[i]; : 吧……
|
l*n 发帖数: 529 | 12 感觉还是swap来得简洁啊。你code里面维持current其实等效于swap吧?
void reorder(int[] arr) {
assert (arr != null);
if (arr.length == 0)
return;
boolean smallHead = true;
for (int i = 0; i < arr.length - 1; i++) {
if (smallHead && arr[i] > arr[i + 1] || !smallHead
&& arr[i] < arr[i + 1]) {
int tmp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = tmp;
}
smallHead = !smallHead;
}
}
)){
【在 e******g 的大作中提到】 : : 嗯,是的,这逻辑太容易写错了。。。
|
n****e 发帖数: 678 | 13 赞楼主发面经!
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
D**********d 发帖数: 849 | 14 往 Amazon 那边投简历,连个 recruiter screening 都没有 |
b*****g 发帖数: 145 | |
w*******s 发帖数: 96 | 16 找mean来partition,然后穿插
a11...a1m,mean,a21..p2n
a11,a21,a13,a22... |
d***n 发帖数: 832 | |
r******j 发帖数: 92 | 18 第二题的input array是sorted的? |
b*******e 发帖数: 123 | 19 不需要。
【在 r******j 的大作中提到】 : 第二题的input array是sorted的?
|
T**e 发帖数: 191 | 20 大数+1 是什么题? 谢谢了
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
|
|
g*****i 发帖数: 91 | 21 应该是leetcode plus one那道
【在 T**e 的大作中提到】 : 大数+1 是什么题? 谢谢了
|
k*****o 发帖数: 43 | |
c********r 发帖数: 286 | |
t*******7 发帖数: 63 | 24 弱问大数+1题有LINK否?
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
w***y 发帖数: 6251 | 25 几个月不看题,我彻底out了
第二题什么意思? 没看懂 5555 |
t*******7 发帖数: 63 | 26 找到大数加一的题目了。
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
t*******7 发帖数: 63 | 27 1. 第二题可不可以用这个思路
a. 先从小到大SORT一下
b. 把第i 和第i+1 个换下位置 (i = 1, 3, 5, ...)
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
m******s 发帖数: 1469 | 28 Bless
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
l*********u 发帖数: 19053 | 29 bless
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
t*******7 发帖数: 63 | 30 写了下第二题
public void sortArrayMethod2(int inputArray[]) {
//sort array first
Arrays.sort(inputArray);
//create two pointers
for (int i = 1; i
int temp = inputArray[i] ;
inputArray[i] = inputArray[i+1];
inputArray[i+1] = temp;
}
} |
|
|
c**y 发帖数: 172 | 31 Is this O(n log n)?
【在 t*******7 的大作中提到】 : 写了下第二题 : public void sortArrayMethod2(int inputArray[]) { : : //sort array first : Arrays.sort(inputArray); : : //create two pointers : for (int i = 1; i : : int temp = inputArray[i] ;
|
e******g 发帖数: 51 | 32 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。
对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题
1. 大数+1
这题好常见。。。
2. 对数组排序,使得a1<=a2>=a3<=a4>=...
也是很简单的O(n),注意写的时候不用swap元素。。。
Google doc写的,大概花了30分钟,然后问了下有什么问题。。。
嗯,这周要去A家on-site,求bless~~ |
l****o 发帖数: 315 | |
e******g 发帖数: 51 | 34
哦,可能是我多想了,一开始我想交换相邻元素。。。后来发现用不着。。维护一个指
针保存当前pivot就行了
【在 l****o 的大作中提到】 : 不用swap元素是什么意思。。
|
J****3 发帖数: 427 | |
e******g 发帖数: 51 | 36
嗯,貌似见过,不记得了,我贴下代码攒下人品:)
int[] sortArray(int[] s){
int n = s.length;
boolean flag = true;
int current = s[0];
for (int i = 0; i < n-1; i++){
if (((flag) &&(current > s[i+1])) || ((!flag) && (current < s[i+1])){
s[i] = s[i+1];
}
else{
s[i] = current;
current = s[i + 1];
}
flag = !flag;
}
s[n-1] = current;
return s;
}
【在 J****3 的大作中提到】 : Bless~ 第二题貌似之前有人电面的原题吧
|
l*n 发帖数: 529 | 37 看来是个一维dp。没看你code之前还从没往这个方面想过
)){
【在 e******g 的大作中提到】 : : 嗯,貌似见过,不记得了,我贴下代码攒下人品:) : int[] sortArray(int[] s){ : int n = s.length; : boolean flag = true; : int current = s[0]; : for (int i = 0; i < n-1; i++){ : if (((flag) &&(current > s[i+1])) || ((!flag) && (current < s[i+1])){ : s[i] = s[i+1]; : }
|
P*******r 发帖数: 210 | 38 谢谢分享,有个bug,
input {1,2,3}
output {1,3,3}; |
t*********7 发帖数: 255 | 39 这个不对吧...7,6,8过不了啊,CUR不是永远指向没用的那么,7就会MIS |
e******g 发帖数: 51 | 40
嗯,中间写错了,我改改
【在 P*******r 的大作中提到】 : 谢谢分享,有个bug, : input {1,2,3} : output {1,3,3};
|
|
|
s****n 发帖数: 147 | 41 应该是只有
s[i] = s[i+1];
没有
current = s[i];
吧……
【在 e******g 的大作中提到】 : : 嗯,中间写错了,我改改
|
e******g 发帖数: 51 | 42
嗯,是的,这逻辑太容易写错了。。。
【在 s****n 的大作中提到】 : 应该是只有 : s[i] = s[i+1]; : 没有 : current = s[i]; : 吧……
|
l*n 发帖数: 529 | 43 感觉还是swap来得简洁啊。你code里面维持current其实等效于swap吧?
void reorder(int[] arr) {
assert (arr != null);
if (arr.length == 0)
return;
boolean smallHead = true;
for (int i = 0; i < arr.length - 1; i++) {
if (smallHead && arr[i] > arr[i + 1] || !smallHead
&& arr[i] < arr[i + 1]) {
int tmp = arr[i];
arr[i] = arr[i + 1];
arr[i + 1] = tmp;
}
smallHead = !smallHead;
}
}
)){
【在 e******g 的大作中提到】 : : 嗯,是的,这逻辑太容易写错了。。。
|
n****e 发帖数: 678 | 44 赞楼主发面经!
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
D**********d 发帖数: 849 | 45 往 Amazon 那边投简历,连个 recruiter screening 都没有 |
b*****g 发帖数: 145 | |
w*******s 发帖数: 96 | 47 找mean来partition,然后穿插
a11...a1m,mean,a21..p2n
a11,a21,a13,a22... |
d***n 发帖数: 832 | |
r******j 发帖数: 92 | 49 第二题的input array是sorted的? |
b*******e 发帖数: 123 | 50 不需要。
【在 r******j 的大作中提到】 : 第二题的input array是sorted的?
|
|
|
T**e 发帖数: 191 | 51 大数+1 是什么题? 谢谢了
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
g*****i 发帖数: 91 | 52 应该是leetcode plus one那道
【在 T**e 的大作中提到】 : 大数+1 是什么题? 谢谢了
|
k*****o 发帖数: 43 | |
c********r 发帖数: 286 | |
t*******7 发帖数: 63 | 55 弱问大数+1题有LINK否?
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
w***y 发帖数: 6251 | 56 几个月不看题,我彻底out了
第二题什么意思? 没看懂 5555 |
t*******7 发帖数: 63 | 57 找到大数加一的题目了。
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
t*******7 发帖数: 63 | 58 1. 第二题可不可以用这个思路
a. 先从小到大SORT一下
b. 把第i 和第i+1 个换下位置 (i = 1, 3, 5, ...)
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
m******s 发帖数: 1469 | 59 Bless
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
l*********u 发帖数: 19053 | 60 bless
【在 e******g 的大作中提到】 : 今天G的电面,应该是第一轮电面吧,因为题目比较简单。。。 : 对面是个女的,估计是SDE,先是简单问下为啥选Google,然后是两道题 : 1. 大数+1 : 这题好常见。。。 : 2. 对数组排序,使得a1<=a2>=a3<=a4>=... : 也是很简单的O(n),注意写的时候不用swap元素。。。 : Google doc写的,大概花了30分钟,然后问了下有什么问题。。。 : 嗯,这周要去A家on-site,求bless~~
|
|
|
t*******7 发帖数: 63 | 61 写了下第二题
public void sortArrayMethod2(int inputArray[]) {
//sort array first
Arrays.sort(inputArray);
//create two pointers
for (int i = 1; i
int temp = inputArray[i] ;
inputArray[i] = inputArray[i+1];
inputArray[i+1] = temp;
}
} |
c**y 发帖数: 172 | 62 Is this O(n log n)?
【在 t*******7 的大作中提到】 : 写了下第二题 : public void sortArrayMethod2(int inputArray[]) { : : //sort array first : Arrays.sort(inputArray); : : //create two pointers : for (int i = 1; i : : int temp = inputArray[i] ;
|
s***m 发帖数: 336 | 63 第二题:
就是用swap,很简洁啊,O(N)的解法。
public void wiggleSort_2(int [] nums) {
int n = nums.length;
for(int i=1; i
if((i%2!=0 && nums[i]nums[i-
1])){
swap(nums, i, i-1);
}
}
}
private void swap(int[] nums, int i, int j) {
int temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
} |