C
文章平均质量分 57
程序渣渣的后花园
爱文字爱美食爱艺术的技术宅
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
剑指offer面试题4
替换空格题目:请实现一个函数,把字符串中的每个空格替换成“%20”,例如输入“we are happy”。则输出“we%20are%20happy”。此题是将字符串中的空格用%20来代替,使用传统的方法来做的话时间复杂度为o(n2),效果上来看并不好,而且实现起来也非常的复杂,还存在将后面的字符覆盖的情况,因此我们使用另一种方法来实现此题我的方法是:遍历一遍字符串,统计出空格的总数,求出替换完...原创 2018-03-03 22:25:11 · 211 阅读 · 0 评论 -
在二维数组中查找
面试题3:二维数组中查找题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一行都按照从上往下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个数,判断数组中是否含有该整数。 例如下面的二维数组就是每行,每列都是按照递增的顺序排序,如果在这个数组中查找7,则返回true,如果查找5,则返回false。2 8 94 9 127 10 136 8 ...原创 2018-03-03 22:36:14 · 231 阅读 · 0 评论 -
数值的整数次方
面试11:数值的整数次方题目:实现函数double power(double base,int exponent),求base的exponent次方,不得使用库函数,同时不需要考虑大数问题。首先这个题虽然简单,但是有很多小细节,比如base等于0,或者exponent小于0这些情况都是需要好好考虑考虑的。解题思路很简单,主要是一些小细节。base为0的...原创 2018-03-03 22:42:04 · 195 阅读 · 0 评论 -
调整数组顺序使其奇数位位于偶数位前面
面试题14:调整数组顺序使奇数位位于偶数前面题目:输入一个整数数组,实现一个函数来调整该数组中数组中数字的顺序,使得使得所有奇数位于数组的前半部分,所有偶像位于数组的后半部分。其实这道题并不难,只要是在编程的时候注意效率就可以啦。首先看图:思路:首先定义两个指针,一个指向数组开始,一个指向数组结束。然后如果满足条件就交换。不满足就进行指针的加减。代码如下:#include<stdio.h...原创 2018-03-03 22:47:49 · 348 阅读 · 0 评论 -
链表中倒数第k个数
面试题15:链表中倒数第k个节点题目:输入一个链表,输出该连边中倒数第K个结点,为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第一个结点。例如一个连表面有六个结点,从头结点开始它们的值依次是1,2,3,4,5,6.这个链表的倒数第3个结点是值为4的结点。如图:控制p1;当p2走到尾,p1刚好就指向结尾第k个元素。代码如下:#include<stdio.h>#incl...原创 2018-03-03 22:50:09 · 365 阅读 · 0 评论 -
反转链表
面试题16:反转链表题目:定义一个函数,输入一个链表的头结点,反转该链表并输出反转后该链表的头结点,链表定义如下:Struct ListNode{ Int M_nKey; ListNode* m_pNext;}我的代码如下:#include<stdio.h>#include<assert.h>#include<stdlib.h> typed...原创 2018-03-03 22:51:18 · 275 阅读 · 0 评论 -
顺时针打印数组
面试题20:顺时针打印矩阵题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。例如如果输入如下矩阵:1 2 3 4 5 6 7 89 10 11 1213 14 15 16依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,1,10。我的代码如下:#include<stdio.h>...原创 2018-03-03 22:55:18 · 318 阅读 · 0 评论 -
剑指offer 面试题10
面试题10;二进制中1 的个数题目:请实现一个函数,输入一个整数,输出该数二进制表示中1的个数,例如把9表示成1001,有2位是1。因此如果输入9,该函数输出2. 如果使用除法效率会很低,因此我们使用位运算。代码如下:#include<stdio.h> int NumberFind1(int n){ int count=0; while(n) { if...原创 2018-03-03 22:38:33 · 234 阅读 · 0 评论 -
剑指offer 面试题9
面试题9:斐波那契数列题目一:写入一个函数,输入n,求斐波那契切数列的第n项。题目二:一只青蛙一次可以跳上一级台阶,也可以跳上两级台阶,求该青蛙一次跳上一个n级的台阶总共有多少种跳法。首先我们来看第二题,我们可以假设有一个台阶,青蛙跳法:1种; 有两个台阶,青蛙跳法:2种 ...原创 2018-03-03 22:34:04 · 215 阅读 · 0 评论 -
打印1到最大的n位数
面试题12:打印1到最大的n位数题目:输入数字n,按顺序打印出从1到最大的n位十进制数。比如输入3,则打印1,2,3,一直到最大的三位数999。首先这个题目看起来很简单。但是有很多陷阱,比如大数问题,如果n很大,我们考虑要不要用long long类型,再如果long long类型都不可以,我们该如何表示。我的思路:使用字符串来表示数字,这样我们就可以取无限大的n;在字符串上模拟数字加法;打印时...原创 2018-03-03 22:44:59 · 325 阅读 · 0 评论
分享