b*******7 发帖数: 14 | 1 电面一:
面试官应该是白人,英语很标准。一上来就问问题,除了说了自己的名字完全莫有其他
的。
Hashtable的构造,怎么处理冲突,open hashing,open addressing,有什么利弊。
Coding:
给一个Queue, 要求构造一个函数,输入Q和一个参数n,把Q分成每份n个元素的小块,
并且把每个小块的顺序颠倒。我给的算法是用两个stack,解决完了读code(顺便说一下
,读code真费劲,比想象中的累),算法有个小bug,解决了。然后让我问了问题就没了
。第二天收到二面通知。
电面二:
面试官应该也是白人,没有悲催的遇到烙印,哥很幸运 哈哈
晚了15分钟才打来,我还以为出啥状况了。面试官给我的感觉还没准备好,一上来上气
不接下气的说了一堆他们组的东西,kindle组的,主要做video的。说完了让我问问题
,我愣了,直接没准备好。随便问了下他们这次面试和上次有什么区别,他说着说着又
说道他们组去了,又blash blash一堆。我都汗死了。完了之后直接出了个code题目,
给两个array,找出共同的元素,听简单的题,哥悲催的选择了hashtable,写好了code
发邮件给他。结果出了好几个不该出的错误,囧了。悔死我了。。。然后完了之后又让
我问题,聊聊了他们组的事情,因为以前做过video的项目,所以聊了聊openCV,结果
那哥们thesis的时候也用过,聊天聊得挺开心,不过估计没戏了。整个面试给我的感觉
就是聊得挺爽,技术问题解决得很窘迫。一般这种情况都没戏,准备move on了。
bless还在拼搏的XDJM们,加油!~ |
g*****i 发帖数: 2162 | |
l*******1 发帖数: 107 | |
c*********e 发帖数: 644 | |
b*******7 发帖数: 14 | 5 对。。。 当时没怎么想。。。非科班出身 不给力啊 。。。
【在 g*****i 的大作中提到】 : queue那道用一个stack就可以了吧
|
y*******g 发帖数: 6599 | 6 投码农的职位自然招码农
【在 c*********e 的大作中提到】 : 看来现在公司找的还是码农,不是研究性人才
|
a********d 发帖数: 195 | 7 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
namespace testSplitStringToNArray
{
class Program
{
static void Main(string[] args)
{
const string originalString = "
Thisjdfkldjsflkdswieruewirfjkmkdfsdfdsfdsfdsfjkjowieorewjtoirekfdjngmvkmvlkn
ldsfjkljlkjlkjoijeroijelqrefdsakfjlkswxy";
//int arraySize =Convert.ToInt32(args[0]);
int arraySize = 5;//you name it
foreach (string _str in splitAndReturn(originalString, arraySize
))
{
Console.WriteLine(_str);
}
Console.Read();
}
static ArrayList splitAndReturn(string _myString, int n)
{
//Split the string
ArrayList myArrList= new ArrayList();
int done = 0;
int counter = 0;
int length=_myString.Length/n;
Stack _myStack = new Stack();
string _str = string.Empty;
while(done
{
_str= string.Empty;
for (int i = 0; i < n; i++)
{
_myStack.Push(_myString[done*n+i]);
}
for (int i = 0; i < n; i++)
{
_str+=_myStack.Pop();
}
myArrList.Add(_str);
done += 1;
}
_str = string.Empty;
//deal with the last package
if (done * n != _myString.Length)
{
_str = string.Empty;
for (int i = 0; i < _myString.Length - done * n; i++)
{
_myStack.Push(_myString[done * n + i]);
}
for (int i = 0; i < _myString.Length - done * n; i++)
{
_str += _myStack.Pop();
}
myArrList.Add(_str);
}
return myArrList;
//reverse each string array
}
}
} |
s*******f 发帖数: 1114 | 8 // why 2 stacks? here is 1 stack solution.
void ReverseNQ(queue &q, int n){
if (n < 2)
return;
stack s;
int i = 0;
int lenq = q.size();
while (i < lenq){
s.push(q.front());
q.pop();
if (i % n == 0){
while (!s.empty()){
q.push(s.top());
s.pop();
}
}
++i;
}
while (!s.empty()){
q.push(s.top());
s.pop();
}
} |
a********m 发帖数: 15480 | 9 可是。。。。怎么用两个stack呢?想不出来怎么用。。。
第二个用hash也不算错。看要求了。
【在 b*******7 的大作中提到】 : 对。。。 当时没怎么想。。。非科班出身 不给力啊 。。。
|
r******n 发帖数: 170 | 10 nice, boundary case应该是if((i+1)%n==0)吧,假如从头开始算的话
【在 s*******f 的大作中提到】 : // why 2 stacks? here is 1 stack solution. : void ReverseNQ(queue &q, int n){ : if (n < 2) : return; : stack s; : int i = 0; : int lenq = q.size(); : while (i < lenq){ : s.push(q.front()); : q.pop();
|
|
|
b*******7 发帖数: 14 | 11 电面一:
面试官应该是白人,英语很标准。一上来就问问题,除了说了自己的名字完全莫有其他
的。
Hashtable的构造,怎么处理冲突,open hashing,open addressing,有什么利弊。
Coding:
给一个Queue, 要求构造一个函数,输入Q和一个参数n,把Q分成每份n个元素的小块,
并且把每个小块的顺序颠倒。我给的算法是用两个stack,解决完了读code(顺便说一下
,读code真费劲,比想象中的累),算法有个小bug,解决了。然后让我问了问题就没了
。第二天收到二面通知。
电面二:
面试官应该也是白人,没有悲催的遇到烙印,哥很幸运 哈哈
晚了15分钟才打来,我还以为出啥状况了。面试官给我的感觉还没准备好,一上来上气
不接下气的说了一堆他们组的东西,kindle组的,主要做video的。说完了让我问问题
,我愣了,直接没准备好。随便问了下他们这次面试和上次有什么区别,他说着说着又
说道他们组去了,又blash blash一堆。我都汗死了。完了之后直接出了个code题目,
给两个array,找出共同的元素,听简单的题,哥悲催的选择了hashtable,写好了code
发邮件给他。结果出了好几个不该出的错误,囧了。悔死我了。。。然后完了之后又让
我问题,聊聊了他们组的事情,因为以前做过video的项目,所以聊了聊openCV,结果
那哥们thesis的时候也用过,聊天聊得挺开心,不过估计没戏了。整个面试给我的感觉
就是聊得挺爽,技术问题解决得很窘迫。一般这种情况都没戏,准备move on了。
bless还在拼搏的XDJM们,加油!~ |
g*****i 发帖数: 2162 | |
c*********e 发帖数: 644 | |
b*******7 发帖数: 14 | 14 对。。。 当时没怎么想。。。非科班出身 不给力啊 。。。
【在 g*****i 的大作中提到】 : queue那道用一个stack就可以了吧
|
y*******g 发帖数: 6599 | 15 投码农的职位自然招码农
【在 c*********e 的大作中提到】 : 看来现在公司找的还是码农,不是研究性人才
|
a********d 发帖数: 195 | 16 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
namespace testSplitStringToNArray
{
class Program
{
static void Main(string[] args)
{
const string originalString = "
Thisjdfkldjsflkdswieruewirfjkmkdfsdfdsfdsfdsfjkjowieorewjtoirekfdjngmvkmvlkn
ldsfjkljlkjlkjoijeroijelqrefdsakfjlkswxy";
//int arraySize =Convert.ToInt32(args[0]);
int arraySize = 5;//you name it
foreach (string _str in splitAndReturn(originalString, arraySize
))
{
Console.WriteLine(_str);
}
Console.Read();
}
static ArrayList splitAndReturn(string _myString, int n)
{
//Split the string
ArrayList myArrList= new ArrayList();
int done = 0;
int counter = 0;
int length=_myString.Length/n;
Stack _myStack = new Stack();
string _str = string.Empty;
while(done
{
_str= string.Empty;
for (int i = 0; i < n; i++)
{
_myStack.Push(_myString[done*n+i]);
}
for (int i = 0; i < n; i++)
{
_str+=_myStack.Pop();
}
myArrList.Add(_str);
done += 1;
}
_str = string.Empty;
//deal with the last package
if (done * n != _myString.Length)
{
_str = string.Empty;
for (int i = 0; i < _myString.Length - done * n; i++)
{
_myStack.Push(_myString[done * n + i]);
}
for (int i = 0; i < _myString.Length - done * n; i++)
{
_str += _myStack.Pop();
}
myArrList.Add(_str);
}
return myArrList;
//reverse each string array
}
}
} |
s*******f 发帖数: 1114 | 17 // why 2 stacks? here is 1 stack solution.
void ReverseNQ(queue &q, int n){
if (n < 2)
return;
stack s;
int i = 0;
int lenq = q.size();
while (i < lenq){
s.push(q.front());
q.pop();
if (i % n == 0){
while (!s.empty()){
q.push(s.top());
s.pop();
}
}
++i;
}
while (!s.empty()){
q.push(s.top());
s.pop();
}
} |
a********m 发帖数: 15480 | 18 可是。。。。怎么用两个stack呢?想不出来怎么用。。。
第二个用hash也不算错。看要求了。
【在 b*******7 的大作中提到】 : 对。。。 当时没怎么想。。。非科班出身 不给力啊 。。。
|
r******n 发帖数: 170 | 19 nice, boundary case应该是if((i+1)%n==0)吧,假如从头开始算的话
【在 s*******f 的大作中提到】 : // why 2 stacks? here is 1 stack solution. : void ReverseNQ(queue &q, int n){ : if (n < 2) : return; : stack s; : int i = 0; : int lenq = q.size(); : while (i < lenq){ : s.push(q.front()); : q.pop();
|
x*******7 发帖数: 223 | 20 第二题 找两个array的共同元素,是指找两个的intersection么?
【在 a********m 的大作中提到】 : 可是。。。。怎么用两个stack呢?想不出来怎么用。。。 : 第二个用hash也不算错。看要求了。
|
r****t 发帖数: 10904 | 21 这些 coding 必须用 java 么?
【在 b*******7 的大作中提到】 : 电面一: : 面试官应该是白人,英语很标准。一上来就问问题,除了说了自己的名字完全莫有其他 : 的。 : Hashtable的构造,怎么处理冲突,open hashing,open addressing,有什么利弊。 : Coding: : 给一个Queue, 要求构造一个函数,输入Q和一个参数n,把Q分成每份n个元素的小块, : 并且把每个小块的顺序颠倒。我给的算法是用两个stack,解决完了读code(顺便说一下 : ,读code真费劲,比想象中的累),算法有个小bug,解决了。然后让我问了问题就没了 : 。第二天收到二面通知。 : 电面二:
|
c****m 发帖数: 179 | 22 你这个只是把每个小块内的顺序颠倒了一下?
我觉得lz说的用两个stack的意思是,保持小块内数的顺序不便,交换小块的位置。就
像reverse the word order in a sentence.
【在 s*******f 的大作中提到】 : // why 2 stacks? here is 1 stack solution. : void ReverseNQ(queue &q, int n){ : if (n < 2) : return; : stack s; : int i = 0; : int lenq = q.size(); : while (i < lenq){ : s.push(q.front()); : q.pop();
|