9 dychen123

尚未进行身份认证

暂无相关描述

等级
博文 182
排名 2w+

C++编译与链接(0)-.h与.cpp中的定义与声明

转自http://www.cnblogs.com/magicsoar/p/3702365.htmlC++中有的东西需要放在可以在.h文件中定义,有的东西则必须放在.cpp文件中定义,有的东西在不同的cpp文件中的名字可以一样,而有的则不能一样那么究竟哪些东西可在头文件中定义,声明,哪些东西又必须在.cpp中定义,声明呢? *以下所有的讨论都是在全局命名空间中(即不

2016-06-06 14:50:25

C/C++编译器错误代码大全

来自:  http://www.iamlicky.cn/post/109.html编译器错误C2001  错误消息                   常数中有换行符                  字符串常数不能继续到第二行,除非进行下列操作:                 •用反斜杠结束第一行。

2016-06-06 11:00:00

VS2013的一些配置、调试、使用

1.VS2013的基本使用和调试http://jingyan.baidu.com/article/f3ad7d0fe7ca0d09c3345b84.html2.VS2013的配置修改,使得每次编译不用整个工程重新编译一次浪费时间http://blog.163.com/soda_water05/blog/static/212832235201381521147398/

2016-05-17 10:25:50

C++的回调机制

什么是回调开发中经常遇到等待其他模块事件通知的情况,例如:用户点击UI上button的事件,通知给相关函数处理逻辑Model中数据改变的事件,通知给相关View模块刷新界面异步IO完成的事件,通知给处理函数确认成功还是失败客户端向服务器发N种不同请求,服务器为每种请求准备好处理函数这些等待通知的函数被执行的过程就是回调的过程,所以回调是一个很常见很简单的事情。回调可能大

2016-05-16 11:34:10

进程与线程的区别

线程是指进程内的一个执行单元,也是进程内的可调度实体.与进程的区别:(1)地址空间:进程内的一个执行单元;进程至少有一个线程;它们共享进程的地址空间;而进程有自己独立的地址空间;(2)资源拥有:进程是资源分配和拥有的单位,同一个进程内的线程共享进程的资源(3)线程是处理器调度的基本单位,但进程不是.4)二者均可并发执行.进程和线程都是由操作系统所体会的程序运行的基本单元,系

2015-10-17 07:18:57

#ifndef

#ifndefXXX#defineXXX...(需要编译的程序)#endif

2015-10-16 23:54:23

C++虚基类的作用

参考自:http://blog.csdn.net/caomiao2006/article/details/4463664虚基类的作用     当一个基类被声明为虚基类后,即使它成为了多继承链路上的公共基类,最后的派生类中也只有它的一个备份。例如:classCBase{};classCDerive1:virtualpublicCBase{};classCD

2015-10-16 22:49:52

279.Perfect Squares

思路:动态规划。classSolution{public:  intnumSquares(intn){    //判错    if(n         int*dp=newint[n];    //初始化    for(inti=0;i      dp[i]=n;    

2015-10-16 13:15:13

链表分段翻转

问题: 将一个单链表每K个一组进行翻转1->2->3->4->5假如k=2,则变成2->1->4->3->5k=3,则变成3->2->1->4->5接口函数:ListNode*res(ListNode*head,intk)代码:ListNode*res(ListNode*head,intk){}#includeusin

2015-10-11 15:43:40

读取ip比如“192.168.1.2”并且提取出里面各个字段的数字

问题:读取ip比如“192.168.1.2”,提取出里面各个字段的数字。解决:循环中,首先cin>>a(a是一个int),然后cin>>s(s是一个char)。这样可以避免先读取string然后再转换为int的麻烦。#include#includeusingnamespacestd;intmain(){    inta;    chars=

2015-10-04 17:40:29

“一个数组有正负0,求和为0的最长连续子数组”的失败解法

问题:一个数组有正负0,求和为0的最长连续子数组失败思路:想半天没有想到什么优化巧妙的方法。最后思路是:对a[0]...a[i]进行累加求和,将原来的a[i]转换为sum_a[i]。初始化时i=-1,从后往前找出第一个sum_a[j]==0的j。正式处理时,从前往后i=0~len,从后往前j=len~i,然后找出第一个sum_a[j]==sum_a[i],判断此时的j-i是否大于原来的j-i,

2015-09-25 22:36:25

C++读取多行数字然后读取该行各个数字

问题:比如让循环读取一行数字“123;456;789;”并且取出各个数字1,2,3,4,5,6,7,8,9说明:输入只有一行,以‘;’为分隔符,其实是三行数字,但是注意最后结尾有一个‘;’(如果没有这个分号,代码将发生很大变化)。每行数字以空格分割。解决:使用C++里面的getline和sstream。代码如下。#include#includ

2015-09-25 22:22:42

96.Unique Binary Search Trees

问题:给出n,请问这1,2...n个数,能构成多少种二叉排序树思路:动态规划。遍历1...n,i作为根节点,则根节点左边有f(i-1)种可能,右边有f(n-i)种可能,所以以i为根节点时有f(i-1)*f(n-i)种可能,循环即可。classSolution{public:   intnumTrees(intn){       if(n       

2015-08-23 23:36:34

24.Swap Nodes in Pairs

问题:给一个链表,每2个节点交换一次,比如,Given1->2->3->4,youshouldreturnthelistas2->1->4->3.思路:只考察链表操作,太简单。/** *Definitionforsingly-linkedlist. *structListNode{ *    intval; *    ListN

2015-08-23 22:28:28

shelll编程-项目笔记

24.awk-F':''BEGIN{printf("hello\n")}{if(NR>=2)printf("%s,%s,%s---NF:%s,NR:%s\n",$1,$2,$3,NF,NR);}END{printf("goodbye\n")}'./file

2015-08-10 18:50:15

64.Minimum Path Sum

问题:给一个矩阵,求一条从左上角到右下角的路径的和,该路径上的数的和最小。思路:很典型的动态规划问题。类似于数学归纳法。划分状态:dp[i][j]表示从坐标(i,j)到右下角的最小和。递推式:dp[i][j]=grid[i][j]+min(dp[i+1][j],dp[i][j+1])。注意边界条件即可。classSolution{public:  intminPathSu

2015-08-08 22:55:40

70.Climbing Stairs

问题:斐波那契数列问题思路:用递归的话有很多重复计算,时间、空间不行,有可能栈溢出。用动态规划很好的解决这些问题。classSolution{public:  intclimbStairs(intn){    int*dp=newint[n+1];    dp[1]=1;    dp[2]=2;    for(int

2015-08-08 22:24:21

76.Minimum Window Substring

问题:给出两个字符串,求第一个字符串中包含第二个字符串的最大子串。思路:建立两个hash表。第一个hash表存储第二个字符串中各个字符出现的次数。第二个hash表初始化跟第一个hash相同,只不过各个字符的value都等于0。然后遍历第一个字符串,只要当前字符出现在第一个hash表中,就将第二个hash的对应字符的value加1,直到第二个hash表中所有字符的value都大于等于第一个has

2015-08-08 21:16:35

136.Single Number

问题:给一个int数组,所有元素均出现2次除了其中一个只出现1次,找出该数。思路:建立hash表:遍历数组元素,如果发现hash中没有出现当前元素,就将当前元素插入hash表;如果hash表已经存在该元素,就将该元素删除。最后hash剩下的那个数就是只出现一次的数。classSolution{public:  intsingleNumber(vector&nums){

2015-08-08 16:29:45

242.Valid Anagram

问题:两个字符串,判断是不是通过改变字符位置得到对方。思路:建立hash表查找。一开始用unordered_multimap,key-value分别是“字符-字符是否出现”,但是超时了;后来变成用unordered_map,key-value分别是“字符-字符出现次数”,遍历完了如果hash表刚好被删除,就说明trueclassSolution{public:  boo

2015-08-08 16:10:59
奖章
    暂无奖章