杯具的面试及其它

应该说是去年了,去adobe二面。居然是技术面,之前完全没想到,然后就杯具了。
主要面试java,好久没用了,然后各种回答不上来。。最后那个面试官无奈了,看1小时的面试居然还差几十分钟,就给我出了个计算字符串中每个字母的个数的题。
然后我说不会用java写,用ruby行不?同意了,写了两种方法,基于String#scan和String#each_byte。最后他也没看懂。更无语的是我还把正则表达式的[Aa]写成了Aa,估计到时候拿我代码也运行不出来,唉。。

于是今天不甘心,重新写了个。比较满意


#char_count.rb
if ARGV.length != 1
    puts "argument error: usage: ruby char_count.rb string"
    exit
end

string = ARGV.shift
count = Hash.new (0)
('a'..'z').each do |char|
    count[char]=string.count(char)
end
('A'..'Z').each do |char|
    count[char.downcase]+=string.count(char)
end

#sort the out put in alphabetical order

count.sort.each do |element|
    if element[1]!= 0
        puts "Count of \"#{element[0]}/#{element[0].upcase}\" is #{element[1]} "
    end
end

P.S. 由于WP的博客被墙,翻墙不是每次都方便,于是想找个国内的。然后准备用Blogbus,而且它可以方便的搬家。搬完家之后发现我好几篇都“被审核”了!!马上对其印象差了很多!准备坚守这里了。。。

P.S.S 原来WordPress原生支持代码高亮的,一直不知道呀。。。 参见Posting Source code

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s