微软公司的面试问题(2)
      
          运算
      
          ★链接表和数组之间的区别是什么?
      
          ★做一个链接表,你为什么要选择这样的方法?
      
          ★选择一种算法来整理出一个链接表。你为什么要选择这种方法?现在用O(n)
      时间来做。
      
          ★说说各种股票分类算法的优点和缺点。
      
          ★用一种算法来颠倒一个链接表的顺序。现在在不用递归式的情况下做一遍。
      
          ★用一种算法在一个循环的链接表里插入一个节点,但不得穿越链接表。
      
          ★用一种算法整理一个数组。你为什么选择这种方法?
      
          ★用一种算法使通用字符串相匹配。
      
          ★颠倒一个字符串。优化速度。优化空间。
      
          ★颠倒一个句子中的词的顺序,比如将“我叫克丽丝”转换为“克丽丝叫我”,
      实现速度最快,移动最少。
      
          ★找到一个子字符串。优化速度。优化空间。
      
          ★比较两个字符串,用O(n)时间和恒量空间。
      
          ★假设你有一个用1001个整数组成的数组,这些整数是任意排列的,但是你知
      道所有的整数都在1 到1000(包括1000)之间。此外,除一个数字出现两次外,其
      他所有数字只出现一次。假设你只能对这个数组做一次处理,用一种算法找出重复
      的那个数字。如果你在运算中使用了辅助的存储方式,那么你能找到不用这种方式
      的算法吗?
      
          ★不用乘法或加法增加8 倍。现在用同样的方法增加7 倍。
      
      
应天故事汇(gsh.yzqz.cn)

下一章 回目录