自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 资源 (3)
  • 问答 (2)
  • 收藏
  • 关注

原创 剑指offer—字符串转换整数

对于这个问题,其实最先开始我是采用循环的方式进行的,int StrToInt(char *str){ int number=0; while(*str!=0) { number=number*10+*str-'0'; str++; } return number;}这是最初的一个想法,在我们遇到这个情况了以后,我们作为编程的

2016-05-28 10:40:53 3419

原创 数据结构—顺序表的实现

线性表的顺序存储又称为顺序表。它是用一组地址连续的存储单元,依次存储线性表中的数据元素,从而使得逻辑上相邻的两个元素在物理位置上也相邻。第1个元素存储在线性表的起始位置,第i个元素的存储位置后面紧接着存储的是第i+1个元素。因此,顺序表的特点是表中元素的逻辑顺序与其物理顺序相同。所以在这里我们实现一下顺序表!seqlist.h#define _CRT_SECURE_NO_WARNINGS 1#if

2016-05-26 23:10:09 5338

原创 C语言小项目—注释转换

本次这个小项目的目的是把.c文件中的C风格的注释转换成为C++风格的注释。C注释风格:/**/ C++注释风格://首先我们分析一下会出现的几种状态,以及各种状态之间的转换关系: 首先我们在这里对一些状态进行了标注,我们这里已知的有4种状态, 第一种是END_STATE 第二种是C_STATE 第三种是CPP_STATE 第四种是我们平时的NULL_state。在这里,注释转换操作的是文

2016-05-22 17:16:48 3759

原创 C语言知识点总结

在这里对C语言利用思维导图的方式进行总结一下,写的不算太深,主要是能让大家知道复习时应该搞清楚的问题。思维导图后续仍然会补充,如果需要思维导图文件,请发邮件到953659912@qq.com

2016-05-22 14:17:44 8656 5

原创 剑指offer—左旋转字符串

题目:字符串的左旋转操作时把字符串前面的若干个字符转移到字符串尾部。请定义一个函数实现字符串左旋转操作的功能。比如输入字符串“abcdefg”和数字2,该函数将返回左旋转2位得到结果“cdefgab”对于这一道题,按照普通的思想我们的想法一般都是先把字符a取出来,然后把后面你的字符串向前移动,然后把a放到最后。然后依次再把b进行一次,就可以了。代码:#include<stdio.h>#includ

2016-05-20 17:12:55 5035

原创 剑指offer—求字符串中第一个只出现一次的字符

对于这个问题,常规思路我们进行分析,你首先肯定是喜欢先让指向一个字符,然后和它后面的每个字符进行比较,如果后面没有相同的字符的话,这个字符就是你所要找的第一个只出现一次的字符。 但是这种思路我们首先要比较n个字符,然后每个字符可能要与后面有n个字符比较,所以,最后我们可以知道这个的时间复杂度为O(n^2),作为一个精益求精的程序员,我想我们肯定要对此进行优化。对于这个字符串,我们面对这里面所有的字

2016-05-18 21:49:03 3552

原创 关于C语言中的文件操作

大一开了C语言课时,一直到最后我都是没有接触过文件操作的,那时马上要结课了,老师讲的也特别快,所以了解程度也不是太高,所以也觉得需要进行一下总结:闲话也就不多说了,进入正题, 对于文件,我想概念不需要我们来多说了,在这里我们叙述一下C语言中对文件操作的流程: 首先,我们要打开文件,然后要读写文件,然后我们要关闭文件。1.文件操作相关基础关于流: 流是一个抽象出来的东西,流指的是一种信息转换,就

2016-05-18 20:51:52 4152

原创 有趣的通讯录—最终版

我们完成我们的第二个版本的通讯录,文件版的,在这里和第一次一样,我任然使用三个文件contact_text_3.h封装结构体以及函数声明,contact_text_3.c封装函数算法,最后,test.c封装主函数和测试函数。这里我们需要熟悉文件操作,对于fopen函数的使用,文件指针的使用,还有fread函数和fwrite函数。这些最后可以使得我们将通讯录中的内容保存下来,然后方便了下一次的读取,如

2016-05-17 22:42:48 4688

原创 剑指offer—打印1到最大n位数

面试题12: 题目:输入数字n,按照顺序答应出从1最大的n位十进制数。比如输入3,则打印出1、2、3一直到最大的三位数即999。 对于这道题进行时,咱们会进行一些分析,当你输入3时,最大的三位数是999,这就是说这个最大的数是9*10^n-1+9 *10^n-2+。。。+9 *10^0。所以在这我想学习C语言的初学者都可以打出下面这个程序:#define _CRT_SECURE_NO_WARNI

2016-05-16 23:14:34 1243

原创 有趣的通讯录—动态版

我们完成我们的第二个版本的通讯录,动态版的,在这里和第一次一样,我任然使用三个文件contact_text_2.h封装结构体以及函数声明,contact_text_2.c封装函数算法,最后,test.c封装主函数和测试函数。contact_text_2.h#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h>#include<stdlib.h>#i

2016-05-15 16:15:11 857

原创 C和指针—结构体和联合

首先在这一章我们要讲的是结构与联合。 在平时,我们往往需要对数据进行成组的形式进行存储和访问,所以,在这里C提供了两种可以存储多种数据的数据类型:数组和结构。1.关于结构体的基础知识数组,这是一个同类型元素的集合,而结构体,可以存储不同类型的元素,并且这两个类型的访问方式也是不一样的,数组是通过下标的形式进行访问的,而结构体是通过名字来访问。所以,一个结构变量在表达式中使用时,他并不被替换成一个指

2016-05-14 17:28:08 3171

原创 有趣的通讯录—<静态版>

在这里我们要解决的问题是采用顺序表的形式制作一个通讯录。对于顺序表就是一种静态的模式,后续会有动态模式,以及文件操作模式,敬请期待!!!后续我会更新其他方式的操作。 在这里,我们需要三个文件,contact.h封装结构体以及函数声明,conteact.c封装函数算法,最后,test.c封装主函数和测试函数。contact.h#include<stdio.h>#include<stdlib.h>

2016-05-14 09:45:41 1011 1

原创 剑指offer—数组中只出现一次的数字

继续进行今天的每日一题的:面试题40:题目:一个整形数组里出了两个数字之外,其他的数字都出现了两次。请从程序中找出这两个只出现一次的数字。要求时间的复杂度为O(n),空间复杂度是O(1)。这一道题,比如我们给出一个数组{2,3,4,5,6,2,3,4}我们按照最先开始的思维,会这样想,我从头进行遍历,对一个数字和它后续的数字进行匹配。如果后续有和他一样的数字,那么就看下一个数,如果后续没有和他一样的

2016-05-12 23:26:18 1485

原创 剑指offer—调整数组顺序

面试题14:调整数组顺序使得奇数位于偶数前面 题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分。当最初遇到这个问题,大多数人的想法肯定是从头遍历数组,没碰一个偶数,拿出数字,然后移动后续的数字,把偶数放到最后的空位置,这样的时间复杂度是O(n^2);对于追求效率的我们不会因为这样一个算法而满足的!所以我们需要效率更高的算法。

2016-05-11 21:11:36 870

原创 剑指offer—数值的整数次方

面试题11:题目:实现函数double power(double base , int exponment) ,求base的exponment次方。不得使用库函数,同时不需要考虑大数问题。我想刚看到这个问题,很可能好多人都笑了,觉得是很简单的一道题,接下来就拿起笔来直接写了。 例如实现1:#include<stdio.h>#include<stdlib.h>double Power(doubl

2016-05-10 21:59:24 1127

原创 剑指offer—二进制中1的个数

面试题10:二进制中1的个数 题目:请实现一个函数,输入一个整数,输出该数二进制表示1的个数。例如把9表示成二进制是1001,有2位是1。因此如果输入9,该函数输出2。首先对于二进制1的求解,在这里,我们最应该想到的就是关于位运算的一些操作符。总共有五种运算,分别是:与(&),或(|),异或(^),右移(>>),左移(<<)。第一种可能会引起死循环的解法: 咱们平时的思路一般是:先对你所给的这个

2016-05-09 23:56:53 4220

原创 剑指offer刷题—斐波那契数列

我相信每一个学过语言的人都应该知道斐波那契数列这么个东西。关于斐波那契数列我们也做过相关的题,接下来,我们来探讨一下这个问题。 面试题9:斐波那契数列 题目一:写一个函数,输入n,求斐波那契数列的第n项。斐波那契数列的定义如下:当n=0时,f(n)=0,当n=1时,f(n)=1,当n>1时,f(n)=f(n-1)+f(n-2)。这个算法首先咱们应该知道,很多书会用递归的算法解决这个问题。#inc

2016-05-08 22:15:34 911

原创 C中重要的几个关键字

今天我们来说一下C语言中的几个关键字,这都是前几天偷懒的下场,本来应该早早就写了这一篇的。1.static关键字首先,对于这个关键字,我们很熟悉,接下来我们来说一下它的作用: 当static用于函数定义时,或者用于代码块之外的变量声明时,static关键字用于修改标识符的链接属性,会将这个函数或者这个变量变为内部链接,只能当前的他们所在的源文件对这个函数或者变量进行访问。当它用于代码块内部的变量声

2016-05-07 20:25:35 924

原创 剑指offer刷题—替换空格

一天一题的时间又到了,刚好是周六,让我们今天来好好分析一下下面这一道题: 面试题4:替换空格 请实现一个函数,把字符串中的每个空格替换成为“%20”.例如输入“We are happy”,则输出“We%20are%20happy”首先对于这一道题,其实在网络编程中,是会用到的,我们常常将例如‘ ’这样的字符转换成其他可以识别的字符。转换规则是在‘%’后面跟上ASCII码的十六位进制的表示。对于这

2016-05-07 14:52:04 890

原创 Git学习笔记(三)

1.撤销修改对于平时我们编辑文件,修改后肯定会有时候发现自己修改错了,所以Git提供了一个撤销修改的命令:$ git checkout -- file这个命令可以让我们丢弃工作区的修改, 如:$ git checkout -- test.txt 这个的意思就是把test.txt文件在工作区的修改。 撤销工作区的修改符合就近原则:工作区 < - 缓冲区 <- 版本库撤销工作区修改,如果缓冲区有该文

2016-05-07 11:03:57 1005

原创 字符串处理函数(续)

今天我们来说一下一些字符串处理函数今天所探讨的函数是除了我前面两篇博客之外的字符串函数 前两篇博客如下:字符串函数的实现 长度受限的字符串函数的实现另外,还有这一篇中所写的常用的内存操作函数1.查找一个字符关于查找一个字符,我们这里有两种清况,查找一个字符第一次出现的情况,还有一个是查找字符最后一次出现的情况。strchr()函数函数原型:char *strchr(char const *s

2016-05-07 10:18:20 607

原创 剑指offer刷题—二维数组的查找

最近接触到一本书叫做剑指offer,在这里准备在这个2个月左右将这本书刷完,当然,不需要每天多少道什么的,不在多,一天理解一道就好了,希望能成为一种习惯,另外,准备在github上也进行同步分享。今天第一道题: 面试题3:二位数组中的查找 当我们需要解决一个复杂问题时,一个很有效的方法就是从具体的问题出手,通过分析具体的例子,得到规律。 再一个二维数组中,每一行都要按照从左到右递增的顺序排序,

2016-05-06 22:54:52 1952

原创 Git学习笔记(二)

上次已经学会了如何对本地仓库下的文件进行版本保存,并且查找与上次版本不同等功能,今天,我们来学习,版本回退: 1.版本回退 首先,我们对所需要操作的文件,提交到版本库,给出一个说明。 如:$ git commit -m "add1 distributed"接下来,我们对这个文件进行修改,与前一次的内容不同即可, 然后我们提交到版本库,如:$ git commit -m "append"我们对

2016-05-06 18:02:58 806

原创 Git学习笔记(一)

由于对于Github的兴趣,在5月1日这一天我开始了Git的学习,目标是学习完成最基本的。我学习Git是因为Github,所以在此,我们对Git大概说一下,首先Git是一个很厉害的工具,,Git是目前世界上最先进的分布式版本控制系统(没有之一)。首先要知道Git最强大的功能在于可以进行分支管理,作为目前来说,算是世界上最好的了,另外用的多的是svn,属于集中式的版本控制系统,集中式的不能离开网络,而

2016-05-02 13:08:52 497

技术之瞳 阿里巴巴技术笔试心得 高清完整.pdf版下载

从别处花钱买来

2017-02-13

计算机科学导论

《计算机科学导论》是2009年机械工业出版社出版的图书,由佛罗赞编写。

2015-12-28

业余者用VC(MFC)编写串口调试助手

利用VC++6.0MFC做的串口助手,教程都在这里面。

2015-12-06

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除