由买买提看人间百态

topics

全部话题 - 话题: strs
首页 上页 1 2 3 4 5 6 7 8 9 10 (共10页)
b*******y
发帖数: 32
1
来自主题: JobHunting版 - Amazon onsite面试的惨痛经历
第三题当场很难作对啊,amazon这种不提前做真题看来拿不到Offer了。
我贴一个,大家给看看。
====================
#include
#include
using namespace std;
void num2str(int num) {
vector str;
int value;
bool first = true;
while(num != -1) {
value = num % 26;
str.push_back('a'+value);
num = num / 26 -1;
}
vector::reverse_iterator rit;
for ( rit=str.rbegin() ; rit < str.rend(); ++rit )
cout << *rit;
cout< }
int main() {
cout<<"d "; num2
b*******y
发帖数: 32
2
来自主题: JobHunting版 - Amazon onsite面试的惨痛经历
你的结果和我的一样,
============================
#include
#include
using namespace std;
void num2str(int num) {
vector str;
vector::reverse_iterator rit;
const int step = 3;
int value;
bool first = true;
while(num != -1) {
value = num % step;
str.push_back('a'+value);
num = num / step -1;
}
for (rit = str.rbegin(); rit < str.rend(); ++rit)
cout << *rit;
cout< }
int NumString() {
for (int i = 0;
a****n
发帖数: 1887
3
来自主题: JobHunting版 - C++问题3
memset 第二个参数是unsigned char, 不过这个是经典的memset 错误用法
memset (str,1,sizeof(str));
memset (str,0xff00,sizeof(str));
i**********e
发帖数: 1145
4
Are you going to interview candidates soon?
StrStr implementation is much easier to solve compared to wildcard matching.
Although the wildcard matching is a very tricky question, Facebook had asked
this question before:
http://www.mitbbs.com/article_t/JobHunting/31575425.html
If you have taken part in Google Codejam before, you will know how fast
those crazy smart people solve problems within minutes. To solve this
problem using nothing but paper and pencil + without bugs in 20 minutes is
very v... 阅读全帖
K******g
发帖数: 1870
5
来自主题: JobHunting版 - MS on campus 面经, 攒人品,求bless
我的代码比你简洁些。。。
void replacePattern(char* str, const char* pattern)
{
if(str==NULL || pattern==NULL) return;
char *pFirst = str;
char *pSecond = str;
int len = strlen(pattern);
int lastMatch = 0;
while(*pSecond != '\0')
{
int rtn = isMatch(pSecond, pattern);
if(rtn == 1)
{
if(lastMatch == 0)
{
*pFirst = 'X';
pFirst++;
}
pSecond += len;
lastMatch = 1;
... 阅读全帖
s****y
发帖数: 18
6
来自主题: JobHunting版 - 怎么检查极端情况?
str不需要检查NULL么?
感觉应该是这样if (str==NULL||str[0]=='\0' ||remove==NULL||remove[0]=='\0')
另外
str[0]='\0';
比较合适
i**********e
发帖数: 1145
7
来自主题: JobHunting版 - fb 面经
For number 1, the problem of proving the statement sounds MORE interesting..
. hmm..
My solution using character pointer manipulation.
#include
using namespace std;
void printCharCounts(const char *in, char out[]) {
int count = 1;
char *pOut = out;
const char *pIn = in;
while (*pIn) {
if (*pIn == *(pIn+1)) {
count++;
} else {
*pOut++ = '0' + count;
*pOut++ = *pIn;
count = 1;
}
pIn++;
}
*pOut = '\0';
}
int main() {
char str[100] = "... 阅读全帖
a*******8
发帖数: 110
8
来自主题: JobHunting版 - 求一道题的解答
if (str[0]==str[n-1]) return f(str.substring(1, n-1));
It should be
return f(str.substring(1, n-2));
m**********r
发帖数: 122
9
来自主题: JobHunting版 - linkedin 实习面试
How about this one?
int my_atoi(const char *str)
{
int i=0;
while ( *str )
{
i = (i<<3) + (i<<1) + ((*str) - '0');
++str;
}
return i;
}
g**********y
发帖数: 14569
10
来自主题: JobHunting版 - 贡献几道面试题
字母重不重复出现没关系,大致code:
public void dfs(String str, Trie trie) {
if (str.length() == 0) {
if (trie.isWord()) print(trie.word);
}

char number = str.charAt(0);
for (c : getCharacter(number)) {
Trie next = trie.get(c);
if (next != null) dfs(str.substring(1), next);
}
}
b*****c
发帖数: 1103
11
String Similarity
为啥米KMP会超时呢,不是死循环,我测过100000的,只过了4/10 test case
int test_num;
char str[100024];
int F[100024];
long long ans;
void FailureFunction(char P[], int F[],int m){
int i,j;
F[0]=0; // assignment is important!
j=0;
i=1;
while(i if(P[i]==P[j]){
F[i]=j+1;
i++;
j++;
}else if(j>0){
j=F[j-1];
}else {
F[i]=0;
i++;
}
}
}
void solve(int m)
{
int i=m;
int... 阅读全帖
k***t
发帖数: 276
12
看到一个 Space O(1)的,写了一下。
不过"(ab(xy)u)2)" -> "(ab(xyu)2)"而不是(ab(xy)u)2)" -> "(ab(xy)u)2"。
#define INVD -1
void balance (char *a) {
if (!a || !*a) return;
int l=0, u=(int)strlen(a)-1;
while (1) {
while (l<=u && a[l]!='(') {
if (a[l]==')') a[l]=INVD;
l++;
}
if (l>u) break;
while (u>=l && a[u]!=')') {
if (a[u]=='(') a[u]=INVD;
u--;
}
if (l>u) break;
l++; u--;
}
char *p=a;
bool dirty=false;
while (*a) {
... 阅读全帖
k*****y
发帖数: 744
13
来自主题: JobHunting版 - facebook一题
Python写了一个,练练手
L = ['fooo', 'barr', 'wing', 'ding', 'wing']
S = 'lingmindraboofooowingdingbarrwingmonkeypoundcake'
# L1 stores distinct stings in L
# multiples counts the corresponding multiples
L1 = []
multiples = []
for str in L:
if str not in L1:
L1.append(str)
multiples.append(L.count(str))
# k is the lenght of each substring
k = len(L[0])
match = [0]*len(S)
checklist = []
for i in range(0, len(L1)):
mul = multiples[i]
list_pos = []
# find all possible positio... 阅读全帖
k*****y
发帖数: 744
14
来自主题: JobHunting版 - facebook一题
Python写了一个,练练手
L = ['fooo', 'barr', 'wing', 'ding', 'wing']
S = 'lingmindraboofooowingdingbarrwingmonkeypoundcake'
# L1 stores distinct stings in L
# multiples counts the corresponding multiples
L1 = []
multiples = []
for str in L:
if str not in L1:
L1.append(str)
multiples.append(L.count(str))
# k is the lenght of each substring
k = len(L[0])
match = [0]*len(S)
checklist = []
for i in range(0, len(L1)):
mul = multiples[i]
list_pos = []
# find all possible positio... 阅读全帖
s*******f
发帖数: 1114
15
来自主题: JobHunting版 - facebook一题
//码遍本版
//inside for LOOP:
//1st round: check (ling)(mind)(rabo)(ofooowingdingbarrwingmonkeypoundcake
//2nd round: check l(ingm)(indr)(aboo)(fooowingdingbarrwingmonkeypoundcake
//...
//this can avoid double check, and, O(n) time, for slice window
string SubStrWordsGreat(const char *str, const vector &vs){
map ms;
int len = strlen(str);
const char *end = str + len;
int lensub = 0;
if (vs.size() == 0)
return "";
int sz = vs[0].size();
for (ve... 阅读全帖
h********w
发帖数: 221
16
来自主题: JobHunting版 - Epic Written Interview
1. 6 magazines
2. E
3. BC
4. 电话按键,如2222, mode(4) , 0 is 2, 1 is A, 2 is B, 3 is C and so and,
Public phoneKey(String str){
String keystring="";
for(int i=0; i {

int count=0;
int key =0;

if(str.charAt(i) =='2'){

for(int j=0; str[j]!=2; j++)
{

++count;
}
key=count%4;

switch(key)
case 0:
key= 2; break;
case 1:
key = a; break;
.....
keystring+=key;
.....
}
累了,休息一下,
BTW, EPIC t... 阅读全帖
h********w
发帖数: 221
17
来自主题: JobHunting版 - Epic Written Interview
1. 6 magazines
2. E
3. BC
4. 电话按键,如2222, mode(4) , 0 is 2, 1 is A, 2 is B, 3 is C and so and,
Public phoneKey(String str){
String keystring="";
for(int i=0; i {

int count=0;
int key =0;

if(str.charAt(i) =='2'){

for(int j=0; str[j]!=2; j++)
{

++count;
}
key=count%4;

switch(key)
case 0:
key= 2; break;
case 1:
key = a; break;
.....
keystring+=key;
.....
}
累了,休息一下,
BTW, EPIC t... 阅读全帖
y*****z
发帖数: 9
18
来自主题: JobHunting版 - 报个offer@FG,回报版面
这个是概率题。。
先生成 4个bit的 二进制 true代表1,false代表0
这样我们能生成0-15的 等概率的 distribution
然后 [0,15] 当中 选[0,10] -->[0,2](true), [3,9](false)
public class Solution {
/**
* @param args
*/

public void doit(){
int iterate = 10000000;
boolean valve = true;
StringBuilder s = new StringBuilder();
while (valve) {
StringBuilder str = new StringBuilder();
for (int i = 0; i < 4; i++) {
if (Math.random() < 0.5) str.append('1');
... 阅读全帖
y*****z
发帖数: 9
19
来自主题: JobHunting版 - 报个offer@FG,回报版面
这个是概率题。。
先生成 4个bit的 二进制 true代表1,false代表0
这样我们能生成0-15的 等概率的 distribution
然后 [0,15] 当中 选[0,10] -->[0,2](true), [3,9](false)
public class Solution {
/**
* @param args
*/

public void doit(){
int iterate = 10000000;
boolean valve = true;
StringBuilder s = new StringBuilder();
while (valve) {
StringBuilder str = new StringBuilder();
for (int i = 0; i < 4; i++) {
if (Math.random() < 0.5) str.append('1');
... 阅读全帖
r*****k
发帖数: 1281
20
来自主题: JobHunting版 - 请教C/C++小
void RemoveDuplicate(char str[])
{
int len = sizeof(str)/sizeof(str[0]);
cout << "len = " << len << endl;
}
这上面这段code中,sizeof(str)是计算“the size of the pointer represented by
the array identifier”, which is always 4.
p*****2
发帖数: 21240
21
来自主题: JobHunting版 - 上一道题吧

可以用stack 和 dp。不过我也是在有提示的情况下做出来的。我本来是hbase的思路。
但是做不对。没想到你那个思路。你这么快能想到正确的解法还是挺赞的。
public class test
{
public static void main(String[] args)
{
Scanner in=new Scanner(System.in);
String str=in.next();
int[] dp=new int[str.length()];
Arrays.fill(dp,-1);
Stack stack=new Stack();
int max=0;
int maxcount=0;

for(int i=0;i {
char c=str.charAt(i);
if(c=='(')
... 阅读全帖
p*i
发帖数: 411
22
来自主题: JobHunting版 - 上一道题吧
#include
#include
#include
using namespace std;
void process(const string& str) {
stack s, s1;
for (unsigned i = 0; i < str.size(); i++) {
if ('(' == str[i]) {
s.push(i);
} else {
if (!s.empty()) {
unsigned left = s.top(); s.pop();
unsigned& right = i;
if (s1.empty() || (s1.top()+1 < left)) {
s1.push(left);
s1.push(right);
... 阅读全帖
g**********y
发帖数: 14569
23
来自主题: JobHunting版 - amazon面试题目讨论贴2
public class Boggle {
private final int N = 5;
private HashSet m_words;

public Boggle() {
m_words = new HashSet();
}

public static void main(String[] args) {
String[] str = new String[]{
"AEBOF", "TSUVW", "RFOEG", "RSOFI", "PQWRE"
};
new Boggle().run(str);
}

public void run(String[] str) {
char[][] cs = new char[N][N];
boolean[][] used = new boolean[N][N];
m_word... 阅读全帖
s******n
发帖数: 3946
24
来自主题: JobHunting版 - 攒人品之facebook电面面经
觉得那个不太好,用share pointer:
class COWString {
share_ptr data;
public:
COWString(const char* input)
{
data = share_ptr(new CString(input));
}
COWString(const COWString& str)
{
data = str.data;
}
COWString& operator=(const COWString& str)
{
data = str.data;
return *this;
}
COWString& SetAt(int index, char c)
{
CString* newStr = new CString(data->c_str());
newStr->SetAt(index, c);
data = share_ptr(newStr);
return *this;
}
char GetAt(int index) const
{
... 阅读全帖
s******n
发帖数: 3946
25
来自主题: JobHunting版 - 攒人品之facebook电面面经
觉得那个不太好,用share pointer:
class COWString {
share_ptr data;
public:
COWString(const char* input)
{
data = share_ptr(new CString(input));
}
COWString(const COWString& str)
{
data = str.data;
}
COWString& operator=(const COWString& str)
{
data = str.data;
return *this;
}
COWString& SetAt(int index, char c)
{
CString* newStr = new CString(data->c_str());
newStr->SetAt(index, c);
data = share_ptr(newStr);
return *this;
}
char GetAt(int index) const
{
... 阅读全帖
w****x
发帖数: 2483
26
来自主题: JobHunting版 - longest valid Parentheses有O(n)算法么
int longestValidParentheses(const char* str) {
assert(str);
int nMax = 0;
const char* p = str;
stack stk;
while (*p != 0)
{
if (*p == '(')
stk.push(p);
else if (*p == ')')
{
if (!stk.empty() && *stk.top() == '(')
{
stk.pop();
nMax = max(p - (stk.empty() ? str-1 : stk.top()), nMax);
}
else stk.push(p);
}
p++;
}
return nMax... 阅读全帖
w****x
发帖数: 2483
27
来自主题: JobHunting版 - longest valid Parentheses有O(n)算法么
int longestValidParentheses(const char* str) {
assert(str);
int nMax = 0;
const char* p = str;
stack stk;
while (*p != 0)
{
if (*p == '(')
stk.push(p);
else if (*p == ')')
{
if (!stk.empty() && *stk.top() == '(')
{
stk.pop();
nMax = max(p - (stk.empty() ? str-1 : stk.top()), nMax);
}
else stk.push(p);
}
p++;
}
return nMax... 阅读全帖
p*****2
发帖数: 21240
28
来自主题: JobHunting版 - onsite后收到A家的拒信,面经。

第一题写了一下,还不算容易。刚开始题目理解错了。
HashSet hs = new HashSet();
HashMap hm = new HashMap();
HashSet visited = new HashSet();
boolean Change(String a, String b)
{
visited.add(a);
if (a.equals(b))
return true;
if (hm.containsKey(a))
return hm.get(a);
char[] arr = a.toCharArray();
for (int i = 0; i < arr.length; i++)
{
if (arr[i] != b.charAt... 阅读全帖
p*****2
发帖数: 21240
29
来自主题: JobHunting版 - onsite后收到A家的拒信,面经。

第一题写了一下,还不算容易。刚开始题目理解错了。
HashSet hs = new HashSet();
HashMap hm = new HashMap();
HashSet visited = new HashSet();
boolean Change(String a, String b)
{
visited.add(a);
if (a.equals(b))
return true;
if (hm.containsKey(a))
return hm.get(a);
char[] arr = a.toCharArray();
for (int i = 0; i < arr.length; i++)
{
if (arr[i] != b.charAt... 阅读全帖
r*****e
发帖数: 792
30
来自主题: JobHunting版 - 面经from M and A
how about this solution using C++?
//convert number to string, 0->a, 25->z, etc
string numToStr(int n) {
if (n<0) return "";
string str(1, 'a'+n%26);
n = n/26;
while (n) {
str.insert(str.begin(), 1, (char)((n-1)%26 + 'a'));
n = (n-1)/26;
}
return str;
}
l*********8
发帖数: 4642
31
来自主题: JobHunting版 - 今天灌水不踊跃,出道题吧
贴个程序。 直接在这里敲的,可能有问题:)
int longestCircle(vector &ss)
{
int len[26][26];
memset(len, 0, 26*26*sizeof(int));
int maxLen = 0;
for (int i=0; i string &str = v[i];
int vFrom = str[0] - '0';
int vTo = str[str.size()-1] - '0';

for(int j=0; j<26; ++j)
len[j][vTo] = max(len[j][vTo], len[j][vFrom]+len[vFrom][vTo])
maxLen = max(maxLen, len[vTo][vTo];
}
return maxLen;
}
p*****2
发帖数: 21240
32
来自主题: JobHunting版 - 真心问一道题
白芷,我写了一个,你看看有没有问题。空间可以优化到2*m, 后边找最短的也可以一
并做了。不过这个主要是实现这个思路,没有优化。
String min(String str, String word)
{
int n = str.length();
int m = word.length();
int[][] dp = new int[n + 1][m + 1];
for (int i = 0; i <= n; i++)
dp[i][m] = 0;
for (int j = 0; j < m; j++)
dp[n][j] = n + 1;
for (int i = n - 1; i >= 0; i--)
for (int j = m - 1; j >= 0; j--)
{
if (str.charAt(i) == word.charAt(j))
{
dp[i][j] = 1 + dp[i + 1][j + 1];
}
else
{
dp[i][j] = 1 + dp[i + 1][j];
}
}
String ans = "none";
int min = n + 1;
for (in... 阅读全帖
p*****2
发帖数: 21240
33
写了一个deserialize的
class Element:
def __init__(self,str):
self.str=str
self.l=[]

def add(self,e):
self.l.append(e)

def ifstr(self):
return self.str!=None

input="[Apple,[Orange,Banana,[A,B,C]]"
i=0
def dfs():
global i
e=None
while input[i]==',' or input[i]==' ':
i+=1
if input[i]=='[':
e=Element(None)
i+=1
while input[i]!=']':
e.add(dfs())
else:
j=i+1
while inpu... 阅读全帖
G******i
发帖数: 5226
34
☆─────────────────────────────────────☆
viisa (viiiiiisa) 于 (Fri Dec 23 01:33:02 2011, 美东) 提到:
之前都不知道还有如此方便的网站,
随便在上面做了几道题目,竟然有很不错的公司主动联系我给电面,比 refer 效率高
多了。做5道题目就可以申Facebook, Dropbox 等公司了
下月6号还有个比赛 http://codesprint.interviewstreet.com/recruit/challenges/
☆─────────────────────────────────────☆
quantx (X矿工) 于 (Fri Dec 23 01:39:55 2011, 美东) 提到:
啥公司?

☆─────────────────────────────────────☆
viisa (viiiiiisa) 于 (Fri Dec 23 01:54:43 2011, 美东) 提到:
这里有列表,里面的一个自己感兴趣的公司
http://blog.inter... 阅读全帖
t****a
发帖数: 1212
35
来自主题: JobHunting版 - G电面一题
; quick clojure solution: dp with memoize function.
(use 'clojure.string)
;; define the map
(def alphabet (map #(str (char %)) (range 97 123)))
(def number (map #(str (inc %)) (range 26)))
(def n2a (apply assoc {} (interleave number alphabet)))
;; implement dp with memoize function
(def number-translate (memoize (fn [long]
(cond (blank? long) [""]
(= (count long) 1) (if (contains? n2a long)
[(n2a long)]
[])
:else (let ... 阅读全帖
s********k
发帖数: 6180
36
来自主题: JobHunting版 - 上一道我以前喜欢出的题目吧
上一个我写的,没有检查字符串是否都在0-9和'.',不知道这个是否需要补上(如果某
个版本不符合要求(10.1.a),返回什么?)。基本思路是第一个.之前按照数字大小比较
,然后其余的一个个位置比较,只要某一个位置其中一个大,剩下的就不需要比较了(比
如2.07和2.1,小数点之后后面的1》前面的0,直接2.1版本大),然后如果某个字符串先
到.,别的还有数字,那么后者大(1.05>1.0.5),如果最后一个已经晚了,另外一个还有
数字,后面大(3.2.1<3.2.10或者3.2.1<3.2.1.5)
大牛指点一下
const char *compVersion(const char *version1, const char * version2){
const char *v1 = version1;
const char *v2 = version2;
//compare the digit before first '.'
if(getNum(v1)>getNum(v2)) return v1;
else if(getNum(v1)>ge... 阅读全帖
h*******e
发帖数: 1377
37
来自主题: JobHunting版 - 发个Twitter的面试题
2哥的算法可以手动split 就是 i == strLen || isreturn(str[i]) isreturn(str[i-
1]) 不同时候 check 一下 substr(str, segStart, i - segStart ) 把 相应的字符串
拿出来检查
同一行如果先遇到了 // /* 记录下 startPos。 和startType // 期待第一个 /n /*
期待第一个 */ 字符串 内移动 在字符串内保留一个 movPos
每次 遇到 // 前 /n 后 和 / * */不移动 movPos 不移动,否则str[movPos++] =
当前的值 就是one pass的, by the way twitter 离我们公司不远:)那个地方在
twitter 搬过去之后有了很多 穿戴整齐的人,不像以前San Francisco tenderloin街
区到处都是homeless到处游荡了。
w***o
发帖数: 109
38
来自主题: JobHunting版 - G电面面经
第二题
可不可以把字典里的所有词建一个HashMap,(假设都是小写字母)
hashcode = (str.length * 26 + str[0]) * 26 + str[str.length - 1];
这样,任给一个abbr都能在O(1)返回是否是唯一的。
Q*******e
发帖数: 939
39
//caller has to free memory allocated
char *string_reverse2(const char *string)
{
int len;
char * str = string;
char * res;
len = 0;
while (*str++) len++;
str--;
res = (char*) malloc(len + 1);
//sanity check here
while (len > 0) {
*res++ = *str--;
len--;
}
*res = '\0';
return res;
}
b***m
发帖数: 5987
40

嗯,这个我看到了,我的版本是这样:
// caller has to free memory allocated
char *string_reverse2(const char *string)
{
if( !string ) return NULL;
int len = strlen(string);
char *res = (char *)malloc(len + 1);
if( !res ) return NULL;

char *str = (char *)string + len - 1;
while( str >= string )
{
*res = *str;
res++;
str--;
}
*res = '\0';
return res;
}
i**********e
发帖数: 1145
41
longway2008 贴过的代码,估计是我看过非递归解法最短的行数了。。。但不好消化
bool isMatch(const char *str, const char *pat, bool hasStar=false)
{
if (!*pat) return !*str || hasStar;

const char *s, *p;
for (s = str, p = pat; *s; ++s, ++p) {
if (*p == '*')
return isMatch(s, p+1, true);
else if ( *p != '?' && *s != *p)
return !hasStar ? false : isMatch(str+1, pat, hasStar);
}

while (*p == '*') ++p;
return (!*p);
}
h****n
发帖数: 1093
42
来自主题: JobHunting版 - 老题重提:反转字符串
无聊写了一个,请大牛指点
void ReverseWordList(char * str)
{
char * p = str;
char * start = str;
char * end = str;
bool inWord = false;
while(*end++);
end--;
Reverse(start, end);
while(*p)
{
if(*p==' ')
{
if(inWord)
{
inWord = false;
end = p-1;
Reverse(start, end);
}
}
else
{
if(!inWord)
{
inWord = true;
... 阅读全帖
K*****k
发帖数: 430
43
来自主题: JobHunting版 - 这面经题怎么用动态规划做呢?
我自己后来想了下,应该和二爷的思路大体一致,只不过二爷好像是从尾部倒着来,我
的是从头部顺着来。
二爷能否看看对不对。
假如char str[0 .. n - 1]是输入字符串
定义int dp[0 .. n - 1],全部初始化为0
dp[j]表示str[0 .. j]的最小的划分词数,先计算出dp[0]来
求dp[j + 1], 就是
1) 如果str[0 .. j + 1]在字典中,直接设dp[j + 1] = 1
2) 遍历1 <= k <= j + 1, 如果str[k .. j + 1]在字典中且dp[k - 1]大于0,把最小的
那个dp[k - 1]加上1放到dp[j + 1]中
最后的结果就是返回dp[n - 1], 如果值为0表示无法分词。
b*****n
发帖数: 143
44
来自主题: JobHunting版 - 拓扑排序的题怎么做?
试了一下上面的程序,好像不对呀:
int main() {
const char* str[2];
str[0] = "bcdefghijklmnopqrstuvwxyz";
str[1] = "a";
PrintAllOrder(str, 2);
return 0;
}
是不是应该打印出26种顺序?
p*****2
发帖数: 21240
45
我做了一下,
val str="qpxrjxkitzyxacbhhkicqc"

val ret=for(i<-0 until str.length; j<-i+1 to str.length) yield
if(str.substring(i,j).distinct.size==j-i) j-i else 0

println(ret.max)
运行出来是10
s*****n
发帖数: 5488
46
来自主题: JobHunting版 - 请假大家一道BB的题
bool findFirstNonDuplicate(string str, out firtchar) {
int n = str.size();
if (!n) return false;
// assume string contains only ascii chars
int map[256] = {0};
for(int i = 0 ; i < str.Length; i++)
map[str[i])++;
for (int j = 0; j < 256; j++)
if (map[j] == 1)
{
firstchar = map[j];
return true;
}
return false;

}
t********6
发帖数: 348
47
来自主题: JobHunting版 - leetcode出了新题word ladder
第二题,求指导:
class Solution {
public:
void traverse(string& start, string& root, unordered_map string> >& prev, vector& current, vector>& result) {
auto iter = prev.find(root);
for (string str : iter->second) {
current.push_back(str);
if (str == start) {
vector new_one(current.size());
reverse_copy(current.begin(), current.end(), new_one.begin()
);
result.push_ba... 阅读全帖
t********6
发帖数: 348
48
来自主题: JobHunting版 - leetcode出了新题word ladder
第二题,求指导:
class Solution {
public:
void traverse(string& start, string& root, unordered_map string> >& prev, vector& current, vector>& result) {
auto iter = prev.find(root);
for (string str : iter->second) {
current.push_back(str);
if (str == start) {
vector new_one(current.size());
reverse_copy(current.begin(), current.end(), new_one.begin()
);
result.push_ba... 阅读全帖
c********t
发帖数: 5706
49
来自主题: JobHunting版 - storm8 online code给跪了
这样行不?
public int count2(char[] str) {
int n = str.length, count = 1;
for (int i = 1; i < n;i++) {
if (str[i] != str[i-count]) {
count = i+1;
}
}
return count>n/2? n/2: count;
}
c********t
发帖数: 5706
50
来自主题: JobHunting版 - storm8 online code给跪了
这样行不?
public int count2(char[] str) {
int n = str.length, count = 1;
for (int i = 1; i < n;i++) {
if (str[i] != str[i-count]) {
count = i+1;
}
}
return count>n/2? n/2: count;
}
首页 上页 1 2 3 4 5 6 7 8 9 10 (共10页)