![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
文章平均质量分 70
CYRUS STUDIO
博客:https://cyrus-studio.github.io/blog
展开
-
【C/C++】获取整数的二进制形式字符串
思路使用循环使整数左移i位,并取最高位,如果当前最高位为1则值为'1',否则为'0'。这样拼接出一个字符串。注意:计算机中存储的是数字的补码。关于正、负数的原码、反码、补码。正数:原码、反码、补码都一样。 负数:反码(除了最高位,其它位取反)补码(反码+1) 为什么要存储补码,而不是原码?为了统一运算方法。使用补码对有符号整数进行加、减不需要关心符号位。 例如:1 + (-2) = -1 -2的原码 1000 0000 0000 0000 0000 0000 0000 0010原创 2015-03-29 18:34:56 · 5377 阅读 · 0 评论 -
【数据结构与算法】递归汉诺塔
汉诺塔汉诺塔是根据一个传说形成的数学问题(关于汉诺塔):有三根杆子A,B,C。A杆上有N个(N>1)穿孔圆盘,盘的尺寸由下到上依次变小。要求按下列规则将所有圆盘移至C杆:每次只能移动一个圆盘;大盘不能叠在小盘上面。提示:可将圆盘临时置于B杆,也可将从A杆移出的圆盘重新移回A杆,但都必须遵循上述两条规则。递归汉诺塔解题思路:可以把问题简化成2个盘子的情况,如:A上有两个盘子,B和C是空的。如果要把A的两个盘子全部移动到C,需要经过以下步骤:1.A移动一个盘子到B2.A移动一原创 2015-03-08 15:35:40 · 2663 阅读 · 0 评论 -
【C/C++】冒泡排序与二分查找
冒泡排序:就是相邻两个数进行比较,如果a>b(或者a二分查找:每次取头和尾的中间下标的值a与目标值b进行比较,如果a>b表示目标值b在中间下标前面,把头指向中间下标的前一位;如果a1.随机初始化一个指定长度的数组。2.对数组进行排序。3.输入一个值,并查找该值在数组中的下标。#include #include #include // 冒泡排序原创 2015-02-11 23:58:42 · 1548 阅读 · 0 评论 -
【C/C++】实现将一个整数反转
实现将一个整数反转原创 2015-02-08 19:53:41 · 18092 阅读 · 0 评论 -
【C/C++】STL学习笔记
#STL##什么是STLSTL(Standard Template Library)是C++标准库的一部分(80%),是用C++ Template机制来表达泛型的库。面向过程——基于对象——面向对象——泛型STL其实就是一个模板库,这个模板库主要由以下几个组件组成:Iterator(迭代器):正向迭代器、反向迭代器、文件流迭代器。Container(容器):数组、链表、栈、队列、set、map等。原创 2015-05-10 15:19:44 · 2367 阅读 · 1 评论