c语言
一个字节
dare try
展开
-
c语言编程题
1.将数组A中的内容和数组B中的内容进行交换。(数组一样大) 2.取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列。 3:将三个数按从大到小输出 4.求两个数的最大公约数。原创 2017-04-04 17:38:39 · 1484 阅读 · 0 评论 -
浅谈c语言中的位段
浅谈C语言中的位段 位段(bit-field)是以位为单位来定义结构体(或联合体)中的成员变量所占的空间。含有位段的结构体(联合体)称为位段结构。采用位段结构既能够节省空间,又方便于操作。 位段的定义格式为: type [var]: digits 其中type只能为int,unsigned int,signed int三种类型转载 2017-08-14 00:35:25 · 292 阅读 · 0 评论 -
二分查找的递归和非递归实现
循环思想和递归思想原创 2017-08-18 10:17:10 · 179 阅读 · 0 评论 -
二分查找的递归和非递归实现
循环思想和递归思想原创 2017-08-18 10:09:03 · 206 阅读 · 0 评论 -
C语言实现继承和多态
一、面向过程编程与面向对象编程的区别 众所周知,C语言是一种典型的面向过程编程语言,而C++确实在它的基础上改进的一款面向对象编程语言,那么,面向过程与面向对象到底有什么样的区别呢?【从设计方法角度看】 面向过程程序设计方法采用函数(或过程)来描述对数据的操作,但又将函数与其操作的数据分离开来。 面向对象程序设计方法是将数据和对象的操作封装在一起,作为一个整体来处理。原创 2017-08-17 20:34:47 · 371 阅读 · 0 评论 -
实现一个栈Stack,要求实现Push(出栈)、Pop(入栈)、Min(返回最小值的操作)的时间复杂度为O(1)
使用两个栈s1和s2,s2做为辅助栈(每次压入s2的都是s1的最小值)。元素x入栈时,将x和s2栈顶元素做比较,如果x小于等于s2.top(),将x分别push到s1和s2,否则x只push到s1 ;元素出栈时,将s1栈顶元素和s2栈顶元素做比较,如果s1.top()等于s2.top(),s1和s2都执行pop操作,否则只执行s1.pop() *原创 2017-07-20 00:06:37 · 513 阅读 · 0 评论 -
查找一个字符串中第一个只出现两次的字符,要求时间复杂度为O(N)。-替换字符串中的空格为$$$。要求时间复杂度为O(N)
可以考虑到用空间来换取时间,遍历一遍字符串时,可以记录下字符次数。第二次遍历,比较哈希表里面的出现的次数。原创 2017-07-19 23:00:06 · 379 阅读 · 0 评论 -
一个数组中有一个数字的次数超过了数组的一半,求出这个字符。
一个数组中有一个数字的次数超过了数组的一半,求出这个字符。如:int a[]={2,3,2,2,2,2,2,5,4,1,2,3},求出超过一半的数字是2。原创 2017-07-23 15:55:10 · 321 阅读 · 0 评论 -
求N的阶乘所得的数字末尾含有多少个0
因此我们可以写成:`N!=2^x ×3^y ×5^z ··········` 可以看到2和5相乘必然会产生一个10,而这个10会在阶乘的末尾添加一个0。那么问题就转化为2^x ×5^z 可以产生多少个0,即min(x,z),显然X肯定大于Z(能被2整除的数肯定比5多),最终问题转化为求Z的值-即找出1...N能分解出多少个5,原创 2017-07-22 21:11:55 · 825 阅读 · 0 评论 -
win10+VS2013编译caffe的common.cpp错误error C4996: ‘getpid': The POSIX name for this item is deprecated.
win10+VS2013编译caffe的common.cpp发生错误 error C4996: 'getpid': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _getpid. See online help for details.转载 2017-07-22 16:32:27 · 892 阅读 · 0 评论 -
合并有序链表,实现1+2+3...+n,要求不能使用乘除法、循环、条件判断、选择相关的关键字。
合并有序链表,合并后仍然有序这里我们采用递归实现,合并分升序和降序两种:升序//升序原创 2017-07-17 21:45:23 · 298 阅读 · 0 评论 -
c语言实现单链表面试题
无头单链表及面试题原创 2017-06-25 01:05:39 · 290 阅读 · 0 评论 -
逆置/反转单链表+查找单链表的倒数第k个节点,要求只能遍历一次链表
逆置/反转单链表 (1)指针回指法 (2) 栈,后进先出查找单链表的倒数第K个节点:快指针先走K步,慢指针再走。原创 2017-07-18 00:30:23 · 415 阅读 · 0 评论 -
判断两链表是否相交,若相交求交点(链表可能带环)
链表不带环相交求交点思路链表可能带环相交求交点思路原创 2017-07-17 18:21:32 · 253 阅读 · 0 评论 -
判断链表是否带环,若带环求环的长度,若带环求环的入口点
先判断链表是否带环,若带环求环的长度,求环的入口点(利用快慢指针解决)原创 2017-07-17 00:09:21 · 214 阅读 · 0 评论 -
c程序实例
1:编写代码模拟三次密码输入的场景2:编写一个程序,可以一直接收键盘字符,如果是小写字符就输出对应的大写字符,如果接收的是大写字符,就输出对应的小写字符,如果是数字不输出。3:计算1/1-1/2+1/3-1/4+1/5······+1/99-1/100的值4:输出一个整数的每一位5:编写一个程序数一下1到100的所有的整数中出现多少次数字9原创 2017-04-06 00:41:08 · 496 阅读 · 0 评论 -
浅析栈帧
一、 关于栈帧栈帧叫过程活动记录,是编译器用来实现过程/函数调用的一种数据结构。 栈帧就是存储在用户栈上(内核栈)的每一次函数调用涉及的相关信息的记录单元。二、 栈(用户栈和内核栈) 栈作为一种特殊的数据结构而存在(和“队列”相反的记录结构和操作规则),是一种只能在一端进行插入和删除操作的特殊线性表。 它按照后进先出的原则存储数据,先进入的数据被压入栈底,最后的数据在栈顶,需要读数原创 2017-08-27 09:07:38 · 411 阅读 · 0 评论