由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - Java parking lot 编程题
相关主题
问一道题问道G的onsite题
问一道题我编程会不如烙印???放屁
leetcode: largest rectangle in histogram求帮助一道面试题
G家题目讨论:所有的subarray sum 在一个 区间EA 面筋
leetcode最难的题目关于换工作的问题,大家看看.
Java String concatenation有个面试对C语言要求很高,而且注重debugging能力
来二题bloomberg 什么类型的编程题?
问一道算法题谁有过面试时通过remote在电脑上编程的
相关话题的讨论汇总
话题: int话题: begin话题: map话题: end话题: swap
进入JobHunting版参与讨论
1 (共1页)
b**********1
发帖数: 215
1
begin: 1 2 3 0 4
0 2 3 1 4
3 2 0 1 4
3 2 1 0 4
3 2 1 4 0
3 2 0 4 1

end: 3 2 0 4 1
Move(int[] begin, int[] end) {
}
begin 表示 5个停车位, 0是空的,要求每次只能和 空车位 进行交换,最后达到 最
终的结果end. 请教 如何 解答。
j******3
发帖数: 16
2
乱序的麻烦一点,从最初的位置开始,0的位置最终是4,就和当前的4交换,4就不动了
,0再找,这次是1,0就和1交换,so on。
实际操作起来要建立两个hashmap,纪录最初和最终的index-value的mapping,并且是
根据index进行,而不是value,当然每次还是和0换。复杂度是(logn)吧
b******b
发帖数: 713
3
dfs or bfs, only tricky part is to how to keep track which state you already
visited, one easy way is just concatenate it into string, e.g. start will
be "12304", and just put this into map so you know you already visited this
state.

【在 b**********1 的大作中提到】
: begin: 1 2 3 0 4
: 0 2 3 1 4
: 3 2 0 1 4
: 3 2 1 0 4
: 3 2 1 4 0
: 3 2 0 4 1
:
: end: 3 2 0 4 1
: Move(int[] begin, int[] end) {
: }

s****3
发帖数: 270
4
每个停车位的数字initail都不同吗会有44044这样的case吗?
z****8
发帖数: 5023
5
靠 第一反应 快排 我这是怎么了。。。
w*****1
发帖数: 6807
6
正常思维应该就是这样了

【在 j******3 的大作中提到】
: 乱序的麻烦一点,从最初的位置开始,0的位置最终是4,就和当前的4交换,4就不动了
: ,0再找,这次是1,0就和1交换,so on。
: 实际操作起来要建立两个hashmap,纪录最初和最终的index-value的mapping,并且是
: 根据index进行,而不是value,当然每次还是和0换。复杂度是(logn)吧

y********g
发帖数: 6
7
写了个O(n)的,有更优的解法么?
public void swap(int[] A, int i, int j, int[] map) {
map[A[i]] = j;
map[A[j]] = i;
int tmp = A[i];
A[i] = A[j];
A[j] = tmp;
}
public void move(int[] begin, int[] end) {
int n = end.length;
int[] map = new int[n]; // value->position in begin array
for(int i=0; i map[begin[i]] = i;
}
for(int i=0; i if(begin[i] == end[i]) continue;
swap(begin, i, map[0], map); // swap current number with empty
position
swap(begin, map[end[i]], map[0], map); // swap target number
with empty position
}
}
1 (共1页)
进入JobHunting版参与讨论
相关主题
谁有过面试时通过remote在电脑上编程的leetcode最难的题目
[求助]请问有没有JAVA/J2EE方向的好人愿意替我做推荐人。Java String concatenation
请大牛们推荐java junior position面试的书 (转载)来二题
选java还是BI呢?问一道算法题
问一道题问道G的onsite题
问一道题我编程会不如烙印???放屁
leetcode: largest rectangle in histogram求帮助一道面试题
G家题目讨论:所有的subarray sum 在一个 区间EA 面筋
相关话题的讨论汇总
话题: int话题: begin话题: map话题: end话题: swap