Skip to main content

Some Highlights

1. A puzzle about sorting.
https://www.spotify.com/int/jobs/tech/zipfsong/
Given n double numbers, print the top m in a descending order. If two of the numbers have the same value, then the one appear earlier would have a higher weight.

This doesn't sound so hard. However, there are quite a number of tricks here. 1. Efficiency. 2. In Place Sorting.

I first tried quick sort. It supposed to be quite fast. However, I kept getting the wrong answer feedback. The reason is that when two numbers have equal value, quick sort doesn't make the original order in place.

Then bubble sort. Well, the answers would be correct, however, it's not efficient enough. Run Time Error.

Try merge sort, which is supposed to be in place and quite efficient. However,  still Run Time Error. When n is very large and m is small, it's too heavy to perform a sort to the n numbers then pick the top m.

It reminds me of heap, which keeps a good order during construction(heapify). However, it's also no good if we keep the heap size n when we are only interested in the top m elements. We'd better keep a heap size of m, then eliminate all the small elements out of the top m.  Priority queue! Thankfully, problem got solved.

2. Career consultancy.

I consulted Desmond who is a career consultant in SOC. He gave a very good advice on the career path. Firstly, I'd better work in an IT startup and learn some business while working as an engineer. Then go to a big company which gives a better branding of oneself. It would then be easier for people to trust and work with you if you're going to do startups. It's also safer to do startups while working in a big company instead of quitting jobs or doing it immediately after graduation. He helped refer to IBM and another startup company named "Thatz". Kaifu Lee also advise the fresh graduates to"participate first, then make it happen 先参与创业,再主导创业". I guess that's the right way.

3. CS3217 team project.

I have to say that the team mates are just too awesome. They learn and implement very quickly. Moreover, they are able to design the architecture very nicely. I am learning a lot from them.


Need to write the FYP report very quickly!






Comments

Popular posts from this blog

InnovFest 2015

I attended the innovFest 2015 event. It was quite eye opening. Besides the booth, some topics in the forums also interested me. The first topic I joined was the Kopi Chat with Yossi Vardi, a famous Israeli entrepreneur and investor. He is straightforward and humorous. When talking about the most important reason why people wake up with a great idea but ended up sleeping without executing anything, he collected answers from the audiences. One answer pretty much fitted his appetite-- "People fear about losing faces". He shared his opinion with the quotes from Theodore Roosevelt, “It is not the critic who counts; not the man who points out how the strong man stumbles, or where the doer of deeds could have done them better. The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood; who strives valiantly; who errs, who comes short again and again, because there is no effort without error and shortcoming; but who does actually st...

Time Goes By, So Fast

It's been a week since the last blog entry, time goes by so fast. This week's highlights: 1. Rethought about career development. http://www.douban.com/note/276145923/ 2. Treated my friends a traditional Shaoxing meal. 3. Started to learn Ruby on Rails. http://guides.rubyonrails.org/getting_started.html 4. Started to read the book "Simple and Usable Web, Mobile, and Interaction Design" by Giles Colborne. 5. Recorded some vocals. http://site.douban.com/shaohuan 6. Watched this Ted speech:  http://www.ted.com/talks/angela_lee_duckworth_the_key_to_success_grit.html 7. Followed Ahbei(founder of Douban) on Zhihu(Chinese version of Quora). 8. " 我认为世界上不存在一流的人才,世界上只有存在一流的人才一定是学习能力,谦虚,把自己当平凡的人" --马云(Jack Ma)

Pause and Retrospect

I recently enjoyed a swift lunch with an old friend, who was once my roommate during our school years. We had an in-depth conversation about life and career. To my mind, his thought process is far more mature than mine, and his decisions seem more future-oriented. Although our conversation was private, I believe certain insights should be shared with a broader audience. 1. The Role of Luck in Life.  His life experiences have significantly highlighted the impact of luck. While I'm not ready to accept this fully, similar sentiments have been echoed by other successful and wise individuals I've interacted with. I also recently watched an informative video that lucidly explains the 80/20 rule and the principle of luck. The video demonstrates through "agent-based modelling" how the wealthiest person isn't necessarily the most talented but is usually someone of average talent who encounters multiple lucky events in life.  I agreed that luck indeed plays a vital role and...