自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

JullyZ

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

原创 数组中值只出现一次的数字

//一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现//一次的数字。要求时间复杂度是O(n),空间复杂度是O(1).#include "iostream"using namespace std;//以异或后第x位是否为1分为两组,分别找出只出现一次的数void FindNumsAppearOnce(int a[], int n){ if (a =

2016-05-31 15:05:14 230

原创 数组中的逆序对

//在数组中的两个数字如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。//输入一个数组,求出这个数组中的逆序对的总数。#include "iostream"using namespace std;//最直观的,O(n^2)int inversePairs0(int* data, int n){ if (data == NULL || n <= 0) return

2016-05-27 22:23:49 250

原创 第一次只出现一次的字符

//在字符串中找出第一个只出现一次的字符。如输"abaccdeff",则输出'b'.#include "string"#include "map"#include "iostream"using namespace std;//法1:用map O(nlogn)char firstNotRepeatedChar0(char* str){ if (str == NULL) //一定

2016-05-27 20:22:50 245

原创 丑数

/*我们把只包含因子2、3和5的数称为丑数(Ugly number)。求按从小到大的顺序的第1500个丑数。例如6、8都是丑数,但14不是,因为它包含因子7.习惯上我们把1当做第一个丑数。*/#include "iostream"using namespace std;//最直观的方法,写一个丑数判断函数,从1开始count,count到1500输出。bool isUglyNu

2016-05-27 19:28:59 331

原创 把数组排成最小的数

/*输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这3个数字能排成的最小数字321323*/#include "iostream"#include "sstream"#include "vector"#include "algorithm"using namespace std;//实质

2016-05-27 16:57:08 148

原创 mysql_xm

#include #include #include #include #include "filesupport.h"#include "mysql_driver.h"#include "mysql_connection.h"#include "cppconn/driver.h"#include "cppconn/statement.h"#include "cppconn/

2016-05-24 15:46:56 186

原创 从1到n整数中1出现的次数

/*输入一个整数n,求从1到n这个n个整数的十进制表示中1出现的次数。例如,输入12,从1到12这些整数中包含1的数字有1,10,11,12。1一共出现了5次*/#include "iostream"#include "algorithm"using namespace std;int count1Num(int num){ int count = 0; while (n

2016-05-24 10:55:36 200

原创 数组中出现次数超过一半的数字

/*数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,输出2.*/#include "iostream"#include "map"using namespace std;void MoreThanHalfNum0(int* numbers, int le

2016-05-23 11:38:25 148

原创 二叉搜索树变双向链表

//输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。//要求不能创建任何新的结点,只能调整树中结点指针的指向。#include "stdlib.h"struct BinaryTreeNode{ int m_nValue; BinaryTreeNode* m_pLeft; BinaryTreeNode* m_pRight;};//第一种需要额外空间,先中序,再连。

2016-05-20 16:56:16 215

原创 复杂链表的复制

//请实现函数ComplexListNode* Clone(ComplexListNode* pHead),复制一个复杂链表。//在复杂链表中,每个结点除了有一个m_pNext指针指向下一个结点外,还有一个m_pSlibling//指向链表中的任意结点或者NULL。#include using namespace std;struct ComplexListNode{ int m

2016-05-20 15:36:16 186

原创 《七周七语言》之ruby练习2

 有一个数组,包含16个数字。仅用each方法打印数组中的内容,一次打印4个数字。然后,用可枚举模块的each_slice方法重做一遍。myarray = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]myarray[0..3].each{|a| puts a}myarray[4..7].each{|a| puts a}myarray[8..11

2016-05-19 16:31:46 319

原创 栈的压入、弹出序列

//输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。//假设压入栈的所有数字均不相等。例如序列1、2、3、4、5是某栈的压栈序列,序列4、5、3、2、1是//该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。#include "iostream"#include "stack"using namespace std;

2016-05-18 19:50:23 184

原创 顺时针打印矩阵

//输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字#include "stdio.h"void PrintMatrixClockwisely(int **a, int cols, int rows){ int i_end = cols; int j_end = rows; int i_start = 0; int j_start = 0; while (i_end

2016-05-18 18:45:06 178

原创 二叉树的镜像

//请完成一个函数,输入一个二叉树,该函数输出它的镜像#include "stdlib.h"struct BinaryTreeNode{ int m_nValue; BinaryTreeNode* m_pLeft; BinaryTreeNode* n_pRight;};void MirrorRecursively(BinaryTreeNode *pNode){ if (pN

2016-05-18 15:15:33 172

原创 《七天七语言》之Ruby练习1

 打印字符串"Hello, world."。puts 'Hello, world.' 在字符串"Hello, Ruby."中,找出"Ruby."所在下标。'Hello, Ruby.'.index('Ruby.') 打印你的名字十遍。i = 10 while i > 0 i = i-1 puts 'zhuqian' end 打印字符

2016-05-18 10:27:10 299

原创 反转链表

//定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。#include "stdlib.h"struct ListNode{ int m_nKey; ListNode* m_pNext;};ListNode* ReverseList(ListNode* pHead){ if (pHead == NULL || pHead->m_pNext == NULL)

2016-05-17 16:42:03 131

原创 链表中倒数第K个结点

//输入一个链表,输出该链表中倒数第K个结点。(k=1,2...)//如:链表1、2、3、4、5、6.倒数第3个节点为4。#include "iostream"using namespace std;struct ListNode{ int m_nValue = 0; //default ListNode *m_pNext = NULL; ListNode(int val,

2016-05-17 16:05:58 164

原创 调整数组顺序使奇数位于偶数前面

//输入一个整数数组,实现一个函数来调整该数组中数字的顺序,//使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。#include "helper.h"//前后指针void reorderArray0(int a[], int n){ if (a == NULL || n == 0) return; int evenFirst = 0; while (a[evenF

2016-05-16 16:40:15 206

原创 在O(1)时间删除链表结点

//给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该结点。#include "stdlib.h" //包含了null,free()等struct ListNode{ int m_nValue; ListNode* m_pNext;};void DeleteNode(ListNode ** pListHead, ListNode * PToBeDeleted

2016-05-16 15:08:59 150

原创 打印1到最大的n位数

//输入数字n,按顺序打印出从1最大的n位十进制数。//比如输入3,则打印1、2、3一直到最大的3位数即999.#include "iostream"#include "string"#include "vector"using namespace std;//用一个string做加法器void stringAdd(string &str){ if (str.empty(

2016-05-16 13:09:25 260

原创 数值的整数次方

//实现函数double Power(double base, int exponent),求base的exponent次方。//不得使用库函数,同时不需要考虑大数问题。#include "iostream"using namespace std;//因为计算机存储的原因,在一定范围内算相等bool equal(double num1, double num2){ if ((n

2016-05-15 15:10:54 201

原创 二进制中1的个数

//输入一个整数,输出该二进制表示中1的个数。#include "limits"#include "iostream"using namespace std;int binCountOne0(int value) { int bits = sizeof(int) * 8; int count = 0; for (int i = 0; i < bits; i++) //循环

2016-05-14 21:03:12 189

原创 旋转数组找最小值

/*把一个组织最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。*/#include "iostream"#include "algorithm"using namespace std;int minRotatedArray0(int a[], int l, int u){ if (l == u) return

2016-05-14 20:05:03 204

原创 员工年龄排序算法

//对公司几万员工年龄排序#include "vector"#include "iostream"using namespace std;void arrayPrint(int a[], int N){ for (int i = 0; i < N; i++) cout << a[i] << " "; cout << endl;}void sortAges0(int age

2016-05-13 10:16:05 481

原创 单链表逆向打印

/*输入一个链表的头结点,从尾到头反过来打印出每个结点的值*/struct ListNode{ int m_nKey; ListNode* m_pNext;};#include "vector"#include "iostream"using namespace std;void printReverseList0(ListNode* head){ vector tmp

2016-05-12 21:40:43 898

原创 lib和dll的区别与联系

在用sql connector c++时,同时到了mysqlcppconn.lib和mysqlcppconn.dll两个文件,一时竟说不出它们的区别。。(1)lib是编译时用到的,dll是运行时用到的。如果要完成源代码的编译,只需要lib;如果要使动态链接的程序运行起来,只需要dll。(2)如果有dll文件,那么lib一般是一些索引信息,记录了dll中函数的入口和位置,dll中是函数的具体

2016-05-10 14:45:16 396

原创 mysql connector c++测试

可以用connector c++操作mysql。1. 从官网下载对应的connector c++版本。http://dev.mysql.com/downloads/connector/cpp/我这里选择的是64位的noinstall版本。复制解压后的文件夹到相应的工程下。(方便移植,拷到别人电脑上的时候,不需要别人下载配置路径什么的。)2. 包含相对路径

2016-05-10 14:40:04 1033

原创 mysql命令行学习

1. 首先登录mysql。命令行:> mysql -u root -p> Enter pass word:**2. mysql> show databases;  #显示已经存在的数据库。     SQL语句末尾加上';'表示立即执行当前语句。+--------------------+| Database           |+-----------------

2016-05-10 11:24:11 1252

原创 mysql在windows下的安装

现在人脸的特征点存储是文件形式,想把它存储到数据库中。1.  先到官网下载mysql。选择相应的版本。http://dev.mysql.com/downloads/mysql/我选择的是:64位的。(因为我们现在的项目都是生成64位的。)然后解压到你要安装的目录。比如,我的是c:\Program Files2. 以管理员权限打开cmd到bin目录。附

2016-05-09 16:41:40 573

原创 swap:临时变量vs和交换vs位运算 时间对比

/*1 编写一个函数,不用临时变量,直接交换两个数*/void swap0(int* a, int* b){ int temp; temp = *a; *a = *b; *b = temp;}void swap1(int* a, int* b){ *a = *a + *b; *b = *a - *b; *a = *a - *b;}void swap2(int *a, i

2016-05-08 21:28:06 1122

原创 完整的哲学家进食代码

//#include "stdafx.h"#include //HADNDLE#include //#include //time(0)//#include #include "iostream"using namespace std;const unsigned int N=2; //哲学家数目const int THINKING=1; //标记当前哲学

2016-05-06 16:46:54 10292 2

原创 c++ 编程中遇见的问题。

1. c++ size_t 和 int 做比较时的问题。可以看出,int型的负数比unsigned型大。所以,在做类似索引循环的时候,一定要注意索引的类型。比如:string str("ni hao");for (size_t i = str.size(); i >= 0; i--) cout 会访问越界。而此时:string str("ni hao"

2016-05-05 11:21:16 413

原创 哲学家就餐问题——多线程代码学习

哲学家就餐问题,在网上看到一份代码,学习。。#include //HADNDLE#include //#include //time(0)//#include #include "iostream"using namespace std;const unsigned int N=5; //哲学家数目const int THINKING=1; //标记当前

2016-05-04 21:25:41 3923

原创 检测算法对比_测试

不同检测算法误检率、漏检率、检测时间对比测试:void main(){ DetectTask* d_task = NewDetectTaskInstance(60,"pico"); //给facedeletedll就是facedeletedll算法,根据参数,有不同的分配算法 FileSupport file; std::string root = "D:\\project\\we

2016-05-02 22:24:00 521

空空如也

空空如也

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

TA关注的人

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