
C语言
小小蜗牛
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
求矩阵中最大二维矩阵(元素和最大)
一、问题描述 题目35. 求一个矩阵中最大的二维矩阵(元素和最大) 如: 1 2 0 3 4 2 3 4 5 1 1 1 5 3 0 中最大的是: 4 5 5 3 要求:(1)写出算法;(2)分析时间复杂度;(3)用C写出关键代码 二、算法分析 解决此问题的方法比较简单:计算所有可能的二维矩阵元素和,选出其中最大的即可。 详细方案:将原矩阵的数据保存在origin原创 2013-05-04 19:01:09 · 2673 阅读 · 0 评论 -
整数的二进制表示中1的个数
一、问题描述 题目28:整数的二进制表示中1的个数 输入一个整数,求该整数的二进制表达中有多少个1。 例如输入10,由于其二进制表示为1010,有两个1,因此输出2。 二、算法描述 此问题比较基础,利用右移运算符就可以解决:以二进制表示的整数,可以通过判断它的奇偶性就可以确定它的最低位是否为1;然后右移一位,再判断它是否为1;直到这个数为零时可停止。 三、源代码 #inc原创 2013-05-05 15:52:57 · 812 阅读 · 0 评论 -
二维数组与指针
一、实现一个display函数,能够打印输出数组中的元素 输入:指向数组第一个元素的指针,数组的行数及列数 输出:无 该函数灵活之处在于我们可以对任意行任意列的数组进行打印,而不需要固定行数或列数; 我们知道二维数组在函数参数传递的过程中,是需要确定列数的,该函数不需要固定列数。 #include /* **Function:display each element in a原创 2013-05-19 13:31:51 · 898 阅读 · 0 评论 -
查找两数之和等于给定值
第14题: 题目:输入一个已经按升序排序过的数组和一个数字, 在数组中查找两个数,使得它们的和正好是输入的那个数字。 要求时间复杂度是O(n)。如果有多对数字的和等于输入的数字,输出任意一对即可。 例如输入数组1、2、4、7、11、15和数字15。由于4+11=15,因此输出4和11。 #include //假设此数组是按照升序排列 void find_two_numb原创 2013-05-06 21:33:12 · 1131 阅读 · 0 评论 -
通过位运算实现加减法
这里实现这样一个算法:不使用加减乘除,只通过位运算,实现整型的加法。 原理:异或运算也成为半加法,它本质上是不带进位的加法,而需要进位的位置可以通过与运算得出; 将异或运算的结果与与运算后左移一位的结果重新相加; 通过这样反复的相加过程,与运算的结果一定会在不超过32此加法后为零(假设int型占32个bit),这个就可以作为循环结束的条件。 代码如下: #include int ad原创 2013-07-02 19:29:55 · 1486 阅读 · 0 评论 -
gcc编译常见问题
1. 查找不到某头文件 原因一:自定义的头文件xx.h,但是使用如下:#include ,低级错误,应修改为: #include "xx.h" 原因二:查找路径不正确 参考http://blog.lehu.shu.edu.cn/byman/A255482.html中关于gcc查找文件的顺序描述; 终端中输入如下命令:echo 'main(){}' | gcc -E -v - 看到如下输出原创 2015-01-27 13:36:33 · 992 阅读 · 0 评论