44-设计魔方 | 源代码



44-设计魔方 | 源代码

问题1:
设计一个魔方(六面)的程序。
分析:
主要考察面向对象编程。魔方程序必须具备以下特征:
(1)  初始化。
(2) 保存当前的状态。
(3) 输出当前的状态。
(4) 很容易做旋转。
(5) 判断当前状态是否已经成功。

问题2:
有一千万条短信,有重复,以文本文件的形式保存,一行一条,有重复。请用5分钟时间,找出重复出现最多的前10条。
分析:
假设每条短信有150个chars组成。则一共有150*1*10^7=1.5*10^9 chars = 1.5GB
1.5GB的内容,放进内存是没有问题的。所以可以使用map来统计每条短信出现的次数。
然后使用小顶堆,统计出出现次数最多的10条短信即可。

问题3:
收藏了1 万条url,现在给你一条url,如何找出相似的url。(面试官不解释何为相似)
分析:
既然面试官不告诉你何为相似,那么就自己思考。可以使用最长公共子序列、编辑距离等来度量相似度。

Read full article from 44-设计魔方 | 源代码


No comments:

Post a Comment

Labels

Algorithm (219) Lucene (130) LeetCode (97) Database (36) Data Structure (33) text mining (28) Solr (27) java (27) Mathematical Algorithm (26) Difficult Algorithm (25) Logic Thinking (23) Puzzles (23) Bit Algorithms (22) Math (21) List (20) Dynamic Programming (19) Linux (19) Tree (18) Machine Learning (15) EPI (11) Queue (11) Smart Algorithm (11) Operating System (9) Java Basic (8) Recursive Algorithm (8) Stack (8) Eclipse (7) Scala (7) Tika (7) J2EE (6) Monitoring (6) Trie (6) Concurrency (5) Geometry Algorithm (5) Greedy Algorithm (5) Mahout (5) MySQL (5) xpost (5) C (4) Interview (4) Vi (4) regular expression (4) to-do (4) C++ (3) Chrome (3) Divide and Conquer (3) Graph Algorithm (3) Permutation (3) Powershell (3) Random (3) Segment Tree (3) UIMA (3) Union-Find (3) Video (3) Virtualization (3) Windows (3) XML (3) Advanced Data Structure (2) Android (2) Bash (2) Classic Algorithm (2) Debugging (2) Design Pattern (2) Google (2) Hadoop (2) Java Collections (2) Markov Chains (2) Probabilities (2) Shell (2) Site (2) Web Development (2) Workplace (2) angularjs (2) .Net (1) Amazon Interview (1) Android Studio (1) Array (1) Boilerpipe (1) Book Notes (1) ChromeOS (1) Chromebook (1) Codility (1) Desgin (1) Design (1) Divide and Conqure (1) GAE (1) Google Interview (1) Great Stuff (1) Hash (1) High Tech Companies (1) Improving (1) LifeTips (1) Maven (1) Network (1) Performance (1) Programming (1) Resources (1) Sampling (1) Sed (1) Smart Thinking (1) Sort (1) Spark (1) Stanford NLP (1) System Design (1) Trove (1) VIP (1) tools (1)

Popular Posts