c/c++刁钻问题各个击破
文章平均质量分 87
w57w57w57
这个作者很懒,什么都没留下…
展开
-
C/C++刁钻问题各个击破之序言
是程序员都会写C/C++程序。这是不是就说明C/C++比较容易掌握呢?非也!相比其他编程语言来说C/C++要庞大得多、复杂得多,要想用好C/C++不是易事。我用C编程有5个年头了,用C++也有4个年头了,然而我时常犯错,很多错误甚至是屡次三番的犯。在实践中,我发现导致编程出错都是原创 2011-07-22 20:53:11 · 2339 阅读 · 1 评论 -
求砖拍:绝对深入剖析各种方法实现两个变量的交换
本篇摘要 交换两个变量是非常古老的话题了,然而本文绝对保证给你新鲜的感觉!本文涉及到最简单的“不用临时变量交换两个整数”还涉及到如果利用异或来实现两个指针、两个浮点数的交换,要知道指针的浮点数是不允许直接异或运算的哦;同时本文还阐述了如何交换用户自定义类型及其指针。原创 2011-08-09 19:45:08 · 2659 阅读 · 4 评论 -
给力!高效!易懂!位运算求组合
本篇摘要本篇介绍一个非常给力的求组合的算法!上一篇“c_c++刁钻问题各个击破之位运算及其实例(2)”介绍了6个比较复杂的位操作,但是没有给出任何应用实例,本篇就之前谈到的位操作进行应用,其主要内容是用位操作来实现求组合。引例先来看一道题目,这个题目是理解利用位操作求原创 2011-08-03 17:28:17 · 9627 阅读 · 11 评论 -
一种复杂度为O(n)的排序算法:位操作应用之位排序
——位运算应用篇(3)摘要本篇仍然关注位操作的应用,通过前面的两篇文章(《非常给力:位运算求组合》,《简单、易懂:位运算之求集合的所有子集》),我们已经略见了位操作之强大威力。如果说那两篇文章中讲解的应用比较偏僻,那么本篇介绍的是位操作在广为人知的排序算法中的应用原创 2011-08-03 18:19:49 · 4554 阅读 · 4 评论 -
给力!简单!易懂!位运算之求集合的所有子集
摘要刚刚完成一篇利用位运算高效地、巧妙地来解决求组合的博文:《非常给力:位运算求组合》。巧合的是,我在《数据结构算法与应用》一书中看到一道课后题是:用递归实现求一个集合的所有子集。受到题目的要求,我开始想递归,想着想着,我就发现此题不用递归而用位运算来求解,仍然非常巧妙!本篇原创 2011-08-03 17:38:41 · 6742 阅读 · 7 评论 -
C/C++刁钻问题各个击破之位运算及其应用实例(1)
位运算及其应用实例(1)摘要位运算是C/C++中的基本运算之一,即便是这样,它对大多数程序员来说是一个比较陌生的运算——大多数程序员很少使用位运算。本篇先简要介绍基本的位运算操作符及其用法(何时使用),然后介绍位运算符的几个典型应用:(1) 三种不用临时变量交换两个整数原创 2011-07-26 14:07:01 · 8940 阅读 · 13 评论 -
C/C++刁钻问题各个击破之细说sizeof
摘要:Sizeof的作用非常简单:求对象或者类型的大小。然而sizeof又非常复杂,它涉及到很多特殊情况,本篇把这些情况分门别类,总结出了sizeof的10个特性:(0)sizeof是运算符,不是函数;(1)sizeof不能求得void类型的长度;(2)sizeof能求得void原创 2011-07-22 20:54:42 · 20094 阅读 · 30 评论 -
c_c++刁钻问题各个击破之位运算及其实例(2)
位运算及其应用实例(2)摘要上一篇《C/C++刁钻问题各个击破之位运算及其应用实例(1)》受到不少网友的关注,这对我鼓励极大,首先感谢这些网友,特别要感谢几位回复的热心网友。上一篇中我对位运算进行了简单介绍,并谈到了如何操作整数的位,比如将某位置0、置1、翻转、查询某位是否为1等原创 2011-07-27 16:33:27 · 3348 阅读 · 5 评论