自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

落域的博客

一个简单的C++博客

  • 博客(37)
  • 收藏
  • 关注

原创 魔方矩阵 C++实现

书上的一道题目,魔方矩阵,一行的元素相加与一列的元素相加的和一样大,对角线也一样大一开始不会写,百度也没找到。。后来自己慢慢单步调试写出来了。。。 **仅供有需要的人以参考,如有错误请纠正我**#include<iostream>using namespace std;int main(){ const int N

2015-11-19 18:02:55 4176

原创 矩阵相乘

矩阵相乘, 矩阵A X 矩阵B = 矩阵C取矩阵A的行与矩阵B的列为矩阵C的行列例如:A[10][20] * B[21][22] = C[10][22]C[i][j] = A的I行的所有元素与B列的所有元素一一对应相乘得到的积相加。 **仅供有需要的人以参考,如有错误请纠正我**#include<iostream>using namespace std;int

2015-11-19 15:48:44 519

原创 大数相乘算法

不能计算负数,小数。用string对象存储数值,然后逆序排列,从左向右相乘进位。[参考1](http://www.cnblogs.com/heyonggang/p/3599857.html)[参考2](http://www.cnblogs.com/life91/p/3389890.html)#include<iostream>#include<string>void fan(std::s

2015-11-19 14:29:16 552

原创 同位大整数加法算法

位数相同的大整数加法算法。                                    仅供有需要的人以参考,如有错误请纠正我#include<iostream>using namespace std;int main(){ const unsigned NUM = 4; //3*4位大整数 unsigned int a1[NUM] = { 198, 672,

2015-11-19 11:33:29 561

原创 埃拉托色尼筛选算法

求素数算法。#include<iostream>using namespace std;int main(){ const unsigned int NUM = 5500;//这里修改要求的2~n(5500)之间的素数 bool arr[NUM] = {0, 0}; for (int i = 2; i < NUM; i++) arr[i] = 1;

2015-11-19 11:08:17 574

原创 数据结构、算法与应用 (C++描述) 第二版 1.25

子集生成算法,这是我从网上看来的,不是太理解,留着以后看= = **仅供有需要的人以参考,如有错误请纠正**#include<iostream>void Subset(char list1[], int list2[], int n, int m){ if (n == m) { std::cout << "{ "; for (

2015-11-17 11:15:10 1010

原创 数据结构、算法与应用 (C++描述) 第二版 1.24

递归模板函数,判断元素x是否属于数组a[0:n-1] **仅供有需要的人以参考,如有错误请纠正我。**#include<iostream>template<typename T>bool suan(T list[], int n, T x){ if (n < 0) return false; else if (list[--n] == x)

2015-11-17 10:24:41 517

原创 数据结构、算法与应用 (C++描述) 第二版 1.23

求解两个数的最大公约数,欧几里得算法。仅供有需要的人以参考,如有错误请纠正我#include<iostream>unsigned long gcd(int x, int y){ if (y == 0) return x; else return gcd(y, x % y);}int main(){ std::cout << gcd(20

2015-11-17 10:11:36 426

原创 数据结构、算法与应用 (C++描述) 第二版 1.22

我看百度百科上说A(4, 3)的输出大到无法精确计算,就好奇的试了一下= =。 **仅供有需要的人以参考,如有错误请纠正我**#include<iostream>unsigned long A(int i, int j){ if (i == 1 && j >= 1) return pow(2, j); else if (i >= 2

2015-11-17 10:00:47 682

原创 数据结构、算法与应用 (C++描述) 第二版 1.21

这一题我把递归和非递归写在了一起,注释掉的是递归,没注释的是非递归。 **仅供有需要的人以参考,如有错误请纠正我**#include<iostream>/*unsigned long f(int n){ if (n % 2 == 0) return n / 2; else return f(3 * n + 1);}*

2015-11-17 09:35:05 507

原创 数据结构、算法与应用(C++描述) 第二版 1.20

递归计算斐波那契数列,公式是我百度来的。 **公式:f(n) = f(n - 1) + f(n - 2)**。 **仅供有需要的人以参考,如有错误请纠正我**递归:#include<iostream>int f(int n){ static int count = 0; count++; std::cout << count << std:

2015-11-17 09:14:26 623

原创 数据结构、算法与应用 (C++描述) 第二版 1.19

= =我准备换本书看了,这本讲的稍微有点乱,在新书没到之前我还是继续看这本,当然练习也继续做咯。 **仅供有需要的人以参考,如有错误请纠正**递归阶乘#include<iostream>int f(int x){ if (x == 0) return 1; else return (x * f(x - 1));}in

2015-11-17 08:22:27 482

原创 数据结构、算法与应用 (C++描述) 第二版 1.18

关于练习1.17,直接用这个就可以了。[数据结构、算法与应用 (C++描述) 第二版 1.16](http://blog.csdn.net/tianluoyuge/article/details/49863769) 关于1.18,重载了**+、-、*、/**和**>>**运算符,对于>>他要求不能写在**公有成员函数**里,所以用**友元**写,**关于+、-运算我写的比较啰嗦,是为了检测正

2015-11-16 15:35:09 581

原创 数据结构、算法与应用 (C++描述) 第二版 1.16

按照惯例,分了三个部分(头文件,头文件实现,main)来写。只是按照他的要求粗略的写了一下,没有优化。 **仅供有需要的人以参考,如有错误请纠正我**头文件:currency.h#ifndef CURRENCY_H_#define CURRENCY_H_#include<iostream>#include<exception>enum signType { plu,

2015-11-16 11:38:16 709

原创 数据结构、算法与应用 (C++描述) 第二版 1.15

1)他假设无符号长整型、无符号整型都占用4字节,所以可容许的货币最大值应为:2^32 - 1 = 4294967295,最小值应为:0 2)美分的最大值应为:99,最小值应为:-99.     美元的最大值应为:-2147483648到+2147483647     (因为他没有说是**无符号**) 3)为了确保cureency类型转换成long int类型时不发生错

2015-11-16 09:31:27 452

原创 π__π苦逼的周末

ಥ_ಥ 周末要出去兼职,所以没时间看书了。周末的话一般情况不会更新了,毕竟打工回来之后蛮累的,看不进去书。 周一到周五正常更新看书。(´∀`*)

2015-11-16 08:39:02 440

原创 数据结构、算法与应用 (C++描述) 第二版 1.14

这一题有点麻烦,需要判断新的长度是否大于原来的长度,我只做了修改行数,列数如果哪位做出来的话请在评论发一下,我会署上你的名字添加到文章里的。 **仅给有需要的人以参考,如有错误请纠正我** #include<iostream>template<typename T>void changeLength2D(T ** &ar, int oldLength, int n

2015-11-13 16:17:56 1310

原创 数据结构、算法与应用 (C++描述) 第二版 1.13

**仅给有需要的人以参考,如有错误请纠正我**#include<iostream>template<typename T>void changeLength1D(T * &ar, int oldLength, int newLength){ T * min = new T[newLength]; for (int i = 0; i < newLength; i++)

2015-11-13 15:45:59 823

原创 数据结构、算法与应用 (C++描述) 第二版 1.12

这个比较复杂一点,我在源码里做了一点注释,应该可以看懂。 **仅给有需要的人以参考,如有错误请纠正我**#include<iostream>template<typename T>void make2dArray(T ** &x, int numberOfRows, int arr[], int n) //这里接收一个int数组arr[] 用来指定每行new多少列{

2015-11-13 15:28:13 723

原创 数据结构、算法与应用 (C++描述) 第二版 1.11

比较简单,就不做太多赘述了。 **仅给有需要的人以参考,如有错误请纠正我**#include<iostream>template<typename T>int count(T arr[], int n){ if (n < 1) throw "Num must be greater than 1;"; int count; for (coun

2015-11-13 14:51:15 436

原创 数据结构、算法与应用 (C++描述) 第二版 1.10

直接上代码#include<iostream>#include<cstdlib>int abc(int a, int b, int c){ if (a < 0 && b < 0 && c < 0) throw 1; else if (a == 0 && b == 0 && c == 0) throw 2; return a + b * c

2015-11-13 11:54:55 856

原创 数据结构、算法与应用 (C++描述) 第二版 1.9

程序1-1:int abc(int a, int b, int c){ return a + b * c;}程序1-2:float abc(float a, float b, float c){ return a + b * c;}1)cout << abc(1, 2, 3) << endl; 调用了第一个abc(int , int, int); 2)cout << ab

2015-11-13 11:29:51 505

原创 数据结构、算法与应用 (C++描述) 第二版 1.8

int abd(int a, int b, int c);float abc(int a, int b, int c);这两个函数虽然返回类型不同,但是形参是相同的,编译器只看形参来判断是否重载,所以这两个函数头不是具有不同签名的函数。 **仅给有需要的人以参考,如有错误请纠正我**

2015-11-13 11:21:39 784

原创 数据结构、算法与应用(C++描述) 第二版 1.7

这个蛮简单的,求两个数组第一个不一样的数值的索引,我就直接上源码了。**仅给有需要的人以参考,如有错误请纠正我**#include<iostream>template<typename T>int mismatch(T a[], int va, T b[], int vb){ for (int i = 0; i < va > vb ? vb : va; i++) //va >

2015-11-13 11:17:08 530

原创 数据结构、算法与应用 (C++描述) 第二版 1.6

这个写了蛮长时间的,主要是在想如何让程序判断不是一种排序后检查是不是另一种排序,我想出的这个方法可能不是最优的,如果谁有更好的办法,请留言告诉我。**仅给有需要的人以参考,如有错误请纠正我**#include<iostream>template<typename T>bool is_sorted(T arr[], int n){ T temp; int i; for

2015-11-13 11:03:06 781

原创 数据结构、算法与应用 (C++描述) 第二版 1.5

**仅给有需要的人以参考,如有不对请纠正我** = = 这个题目应该就是给一个数值然后依次加上数组索引值之后赋给数组相应位置。#include<iostream>template<typename T, typename V>void iota(T a[], int va, V value){ for (int i = 0; i < va; i++) a

2015-11-13 10:29:18 487

原创 数据结构、算法与应用 (C++描述) 第二版 1.4

∑:符号是∑,英文译音是Sigma, 表示数学中的求和号,是数学中常用的符号,主要用于求多项数之和,用∑表示。【这是我从百度百科复制来的】∑有上下标,下标表示从第几个序列开始,上标表示第几个序列结束,比如3∑ (2i + i)i = 1就是要计算 (2*1 + 1) + (2 * 2 + 2) + (2 * 3 + 3)**P.s:**书上给出的西格玛上标是n-1,下标I = 0,所以我

2015-11-13 10:07:07 565

原创 数据结构、算法与应用 (C++描述) 第二版 1.2

刚刚发错了,这才是第二题。。。深感抱歉这题的意思没太看懂- -,计算a[0:n-1]的数值个数,那直接输出n-1不就好了。。谁理解题目意思的请告诉我。**仅给有需要的人以参考,如有错误请纠正我**#include<iostream>template<typename T, typename V>void fill(T arr[], int n, V value){ for (int

2015-11-13 09:42:14 617

原创 数据结构、算法与应用(C++描述)第二版 1.3

第二题,不知道要说啥,直接上源码了【所有的英文全都是我有道翻译的,我英文并不好 - -!】。 **仅给有需要的人以参考,如有错误请纠正我**P.s:这个是指定数组大小的#include<iostream>const int size = 10;template<typename T, typename V>void fill(T arr[], int n, V value){

2015-11-13 09:31:43 625

原创 数据结构、算法与应用 (C++描述) 第二版 1.1

=。=虽然是一开始的题目都比较简单,但是咱也不能松懈不是,有题目就得做,就要解决。 **仅给有需要的人以参考,如有不对请纠正我。**#include<iostream>void swap(int & x, int & y);void swap(int & x, int & y){ int temp = x; x = y; y = temp;}int ma

2015-11-13 09:14:41 560

原创 郁闷啊,买错书了。。。。

因为之前双十一在网上买的书买错了,买的是《windows程序设计》,到手上才发现是c#和XAML的书= =【白浪费我一百块】。 于是没办法,只好昨天晚上去跑了一趟书店,本来想买《数据结构与算法分析(第二版)》的,奈何书店没有,就只有一本《数据结构、算法与应用(C++描述)》 第二版  ,我看了一下内容,还蛮容易懂得,先看着,不行再换,也欢迎大家给我推荐一两本结构和算法的书=。=P.s:这一

2015-11-13 08:27:23 515

原创 关于C++ primer plus 第六章中文版 18.4

这个题目我没有看懂,问了其他人【QQ群:187122898】也没有人看懂这个题目是什么意思。 程序清单16.5里并没有outint()函数,如果有谁知道这个题目的意思,还请务必告知我,谢谢 我的邮箱:1282456555@qq.com

2015-11-12 13:34:34 432

原创 C++ primer plus 第六版中文版 18.3

首先这不是我自己想出来的,我还不太理解可变参数模板,这是我从网上借鉴别人的另一个方法写出来的,如果有哪位有更好的办法或者有更好的理解,麻烦在评论里给我解释一下,谢谢。 **内容仅为有需要的人用以参考,如有不正确的地方或更好的方法请告知我**具体实现 main.cpp#include<iostream>static long double sum = 0;t

2015-11-12 12:42:34 924

原创 关于将string类对象存入二进制文件

之前我有遇到过一个练习题,要我将string类对象存入二进制文件中,而众所周知,二进制文件是不可以存储指针的,因为当你读取二进制文件里的指针的时候,这个指针原来指向的内存地址已经被回收了,这是无意义了。然后书上介绍了一种方法,先将string对象里面存储的字符串数目存储在一个基本类型中,书上用的是size_t,然后用循环将二进制里的字符提取出来并插入string对象中,而存入则是使用data()

2015-11-12 11:18:44 5617 1

原创 关于visual studio2015配置boost库的问题

因为我也是第一尝试配置,所以有很多不懂得地方,上网找的教程又很多都是老版本的VS,比如VS2010 VS2012又或者Boost1.54之类的。 **我根据自己的配置情况给大家一个建议。**仅给有需要的人以参考用,如有不合适的地方,敬请纠正 首先,我们需要下载一个Boost库。 这个直接去他的官网下就可以了:boost下载地址 下载好后解压到一个目录里。比如我解压到D盘根目录

2015-11-12 10:56:28 7736

原创 C++ primer plus 第六版中文版 18.2

## C++ primer plus 第六版中文版 18.2 ##**仅给有需要的人提供一个思路。如果有更好的解决方案请务必告诉我。**先是头文件:cpmv.h#ifndef CPMV_H_#define CPMV_H_#include<iostream>#include<string>class Cpmv{public: struct Info { st

2015-11-12 10:29:25 857

原创 C++ primer plus 第六版中文版 18.1

## C++ primer plus 第六版中文版 18.1 ## 一开始也没有看懂到底要写什么 后来上网查了一下initializer_list【因为不常用忘记了】的用法之后根据自己的观点写出了这个。**仅给有需要的人提供一个思路。如果有更好的解决方案请务必告诉我。**#include<iostream>#include<initializer_list>#include<algo

2015-11-12 09:01:17 758

空空如也

空空如也

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

TA关注的人

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