原版内容转自:CTCI面试系列——谷歌面试官经典作品 | 快课网

此系列为C#实现版本

谷歌面试官经典作品(CTCI)目录

 

1.1 判断一个字符串中的字符是否唯一

1.2 字符串翻转

1.3 去除字符串中重复字符

1.8 利用已知函数判断字符串是否为另一字符串的子串

2.1 从链表中移除重复结点

2.2 实现一个算法从一个单链表中返回倒数第n个元素

2.3 给定链表中间某结点指针,删除链表中该结点

2.4 求由两个链表结点组成的数之和

2.5 给定一个循环链表,实现一个算法返回这个环的开始结点

3.1 如何只用一个数组实现三个栈

3.2 实现一个栈,要求实现min函数以返回栈中的最小值

3.3 实现数据结构SetOfStacks来模拟叠盘子

3.4 编程解决汉诺塔问题

3.5 使用两个栈实现一个队列

3.6 写程序将一个栈按升序排序

4.1 用一个函数判断一棵树是否平衡

4.2 设计算法判断有向图两结点间是否存在路径

4.3 将递增数组构建成一颗最小高度二叉树

4.4 将二叉树每一层结点构建成一个链表

4.5 查找二叉查找树的任意给定结点的“下一个”结点

4.6 找出一棵二叉树中两个结点的第一个共同祖先结点

4.7 判断一棵二叉树是否为另一棵二叉树的子树

4.8 输出二叉树中路径上结点值之和为给定值的所有路径

5.1 写程序使整数N中第i位到第j位的值与整数M中的相同

5.2 给定一个字符串类型表示的小数,输出其二进制表示

5.3 给定一个整数x,找出另外两个二进制表示中1的个数和x相同的数

5.4 解释以下代码的作用:((n & (n-1)) == 0)

5.5 写程序计算从整数A变为整数B需要修改的二进制位数

5.6 交换一个整数二进制表示中的奇数位和偶数位

5.7 写程序找出丢失的整数,要求时间复杂度O(n)

6.1-6.6 程序员”脑筋急转弯”

7.1 为通用卡牌游戏设计数据结构,并设计子类

7.2 为电话呼叫中心设计类和数据结构

7.3 用面向对象的方法设计一个音乐播放机

7.4 用面向对象思想设计一个国际象棋游戏

7.5 利用OOP思想设计在线读书系统

7.6 设计一个拼图游戏的数据结构

7.7 如何设计一个聊天服务程序

7.8 用面向对象思想设计奥赛罗游戏(Othello)

7.9 为一个内存文件系统设计数据结构和算法

7.10 使用C++实现一个垃圾回收器

8.1 写一个函数来产生第n个斐波那契数

8.2 机器人路径计算

8.3 写一个函数返回一个集合中的所有子集

8.4 写一个函数返回一个串的所有排列

8.5 实现一个算法打印出n对括号的有效组合

8.6 实现图像处理软件中的“填充”函数

8.7 有25分,10分,5分和1分的硬币无限个,计算组成n分的组合数

8.8 经典八皇后问题

9.1 写一个函数将数组B融入数组A,并使其有序

9.2 写一个函数对字符串数组排序,使所有变位词都相邻

9.3 在一个数字中查找特定元素

9.4 如何给一个2G文件中的字符串排序?

9.5 写一个函数找到给定字符串的位置

9.6 在一个矩阵中找出特定的数

9.7 写一个函数模拟叠罗汉节目

10.1-10.7 程序员面试——数学相关题目

11.1-11.6 程序员面试—测试相关题目

12.1 股价信息摘要整合方案

12.2 如何为社交网站(如facebook,新浪微博)设计数据结构

12.3 在40亿个整数值中查找特定数据

12.4 数组去重(限制内存为4kb)

12.5 如果让你设计一个网络爬虫,你怎么避免陷入无限循环?

12.6 10亿个url,每个url对应一个网页,如何检测重复的网页?

12.7 如何设计一个支持TB级别数据的数据库

13.1 用C++写一个函数,输出文件的最后k行。

13.2 浅析哈希表和STL map

13.3 C++中的虚函数是如何工作的?

13.4 深拷贝和浅拷贝有什么区别,如何使用?

13.5 C语言关键字”volatile”的作用?

13.6 C++中名字隐藏是指什么?

13.7 为什么基类中的析构函数要声明为虚析构函数?

13.8 写一个函数,返回传入数据结构的一份完全拷贝

13.9 写一个智能指针类(smart_ptr)

15.1 写一条SQL语句找到每个部门员工的数量

15.2 SQL的连接有哪些不同的类型?并解释其异同点

15.3 什么是反范式?它的优缺点是什么?

15.4 画一个数据库的(ER图),实体包括:公司、人、 专业人士

15.5 写SQL查询语句查询成绩排名前10%的学生

16-20章请见   编程艺术

cracking the coding interview系列C#实现的更多相关文章

  1. Cracking the coding interview

    写在开头 最近忙于论文的开题等工作,还有阿里的实习笔试,被虐的还行,说还行是因为自己的水平或者说是自己准备的还没有达到他们所需要人才的水平,所以就想找一本面试的书<Cracking the co ...

  2. Cracking the coding interview 第一章问题及解答

    Cracking the coding interview 第一章问题及解答 不管是不是要挪地方,面试题具有很好的联系代码总用,参加新工作的半年里,做的大多是探索性的工作,反而代码写得少了,不高兴,最 ...

  3. Cracking the Coding Interview(Trees and Graphs)

    Cracking the Coding Interview(Trees and Graphs) 树和图的训练平时相对很少,还是要加强训练一些树和图的基础算法.自己对树节点的设计应该不是很合理,多多少少 ...

  4. Cracking the Coding Interview(Stacks and Queues)

    Cracking the Coding Interview(Stacks and Queues) 1.Describe how you could use a single array to impl ...

  5. 《Cracking the Coding Interview》读书笔记

    <Cracking the Coding Interview>是适合硅谷技术面试的一本面试指南,因为题目分类清晰,风格比较靠谱,所以广受推崇. 以下是我的读书笔记,基本都是每章的课后习题解 ...

  6. Cracking the coding interview目录及资料收集

    前言 <Cracking the coding interview>是一本被许多人极力推荐的程序员面试书籍, 详情可见:http://www.careercup.com/book. 第六版 ...

  7. 《Cracking the Coding Interview》——第13章:C和C++——题目6

    2014-04-25 20:07 题目:为什么基类的析构函数必须声明为虚函数? 解法:不是必须,而是应该,这是种规范.对于基类中执行的一些动态资源分配,如果基类的析构函数不是虚函数,那么 派生类的析构 ...

  8. 《Cracking the Coding Interview》——第5章:位操作——题目7

    2014-03-19 06:27 题目:有一个数组里包含了0~n中除了某个整数m之外的所有整数,你要设法找出这个m.限制条件为每次你只能用O(1)的时间访问第i个元素的第j位二进制位. 解法:0~n的 ...

  9. 二刷Cracking the Coding Interview(CC150第五版)

    第18章---高度难题 1,-------另类加法.实现加法. 另类加法 参与人数:327时间限制:3秒空间限制:32768K 算法知识视频讲解 题目描述 请编写一个函数,将两个数字相加.不得使用+或 ...

随机推荐

  1. R语言-箱型图&热力图

    1.箱型图 boxplot()函数 > metals<-read.csv("metals.csv",header=TRUE) #读取文件和列名 > boxplot ...

  2. ProxyHandler处理器(代理设置)

    很多网站会检测某一段时间某个IP的访问次数(通过流量统计,系统日志等),如果访问的次数多得不像正常人,它会禁止这个IP的访问. 所以我们可以设置一些代理服务器,每个一段时间换一个代理,就算IP被禁止, ...

  3. Cobbler安装CentOS7系统时报错 line 286: No space left on device

    原因分析: 此报错并不是说磁盘空间不足,而是内存太小了. CentOS7安装系统时最小要2G以上内存,而当时我只给了1G. 所有报错,把内存加大到2G后可以正常安装系统.

  4. python中的字符串

    一.在python中,字符串是不可变类型 通过以下代码说明: >>> s = 'hello, world' >>> id(s) 2108634288304 > ...

  5. input中用中文输入法下的全角·替换英文输入法下的句号.

    核心语句 <input type="text" onkeyup="this.value=this.value.replace(/\./g, '·')" o ...

  6. MongoDB、Hbase、Redis等NoSQL分析

    NoSQL的四大种类 NoSQL数据库在整个数据库领域的江湖地位已经不言而喻.在大数据时代,虽然RDBMS很优秀,但是面对快速增长的数据规模和日渐复杂的数据模型,RDBMS渐渐力不从心,无法应对很多数 ...

  7. Java第三次实验敏捷开发与XP实验

    实验三-1 1.实验要求: 实验三 敏捷开发与XP实践 http://www.cnblogs.com/rocedu/p/4795776.html, Eclipse的内容替换成IDEA 参考 http: ...

  8. .net core 中使用ef 访问mysql

    1.参考文档说修改项目文件添加,就得这么做,不然会报错 <ItemGroup> <DotNetCliToolReference Include="Microsoft.Ent ...

  9. 连接hive

    bin/hiveserver2 nohup bin/hiveserver2 1>/var/log/hiveserver.log 2>/var/log/hiveserver.err & ...

  10. turtle库的学习笔记

    (1)turtle使用pen来绘制图形 pendown()  放下画笔,移动到指定点后继续绘制 penup()   提起画笔,用于另起一个地方绘制时使用 pensize(width)   设置画笔线条 ...