自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

转载 基类指针指向派生类对象

父类子类指针函数调用注意事项1,如果以一个基础类指针指向一个衍生类对象(派生类对象),那么经由该指针只能访问基础类定义的函数(静态联翩) 2,如果以一个衍生类指针指向一个基础类对象,必须先做强制转型动作(explicit cast),这种做法很危险,也不符合生活习惯,在程序设计上也会给程序员带来困扰。(一般不会这么去定义) 3,如果基础类和衍生类定义了相同名称的成员函数,那么通过对象...

2018-08-15 11:04:41 12734 5

原创 什么是野指针?应该如何避免?

野指针:指向不确定地址的指针变量。(即没有初始化)使用野指针易因内存泄露出现段错误。而造成内存泄露的原因有两个:1.访问了没有权限的内存(平时我们正确使用指针的时候,系统应经将相应的内存分配给用户,但是如果指向没有分配的内存,系统会判定我们没有权限)2.访问了已经释放了的内存。因为野指针主要是因为我们平时编程习惯造成的,因此我们只能避免野指针的出现,而不能杜绝。(请注意用词)我们在编程...

2018-08-13 20:33:23 281

原创 c语言分配内存方式有哪些?c语言中常见的内存错误有哪些?

内存分配方式有三种:  1、从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。  2、在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。  3、从堆上分配,亦称动态内存分配。程序在运行的时候用m...

2018-08-13 20:26:24 630

转载 编程中设计并发服务器,使用多进程与多线程有什么区别

网络编程中设计并发服务器,使用多进程与多线程,请问有什么区别?答案一:1,进程:子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品。2,线程:相对与进程而言,线程是一个更加接近与执行体的概念,它可以与同进程的其他线程共享数据,但拥有自己的栈空间,拥有独立的执行序列。两者都可以提高程序的并发度,提高程序运行效率和响应时间。线程和进程在使用上各有优缺点:线程执行开销小,但不利于...

2018-08-13 19:07:04 443

原创 八大排序算法总结

 排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。 算法一:插入排序 插入排序示意图插入排序是一种最简单直观的排序算法,它的工作原理是通过构建有序序列,对...

2018-08-13 09:03:50 184

原创 快速排序---简解

快速排序是真的块。简单的说一下快排的思想:第一步,找出一个键值,通常取第一个元素,用temp中间变量暂存,left和right为排序范围的左边界和右边界。第二步、从右边找出比temp小的放入i下标的位置。i++。第三步、从i+1的位置往后找到比temp大的值放入j下标处。第四步、知道i >=j..第一次排序做好了,然后重复步骤。。排序left到j - 1,i+1 到r...

2018-08-10 20:54:16 145

原创 两个栈实现队列

思路:stack1 为数据存放的栈,stack2为数据操作的栈,进栈全部放入stack1,出栈的时候,依次把stack1.top放入stack2,然后剩下最后一个的时候,作为返回的值,然后再pop掉,然后再把stack2中的数据再存放进stack1中class Solution{public: void push(int node) { stack...

2018-08-03 15:38:58 102

原创 输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示

思路:用位运算来做,与1,第一位保持不变,前面的置0,然后判断,再右移class Solution {public: int NumberOf1(int n) { int i = 0; int count = 0; for(i = 0;i < 32;i++) { if((n&...

2018-08-03 14:48:38 441

原创 基本数据类型所占字节数

16位编译器char :1个字节char*(即指针变量): 2个字节short int : 2个字节int:  2个字节unsigned int : 2个字节float:  4个字节double:   8个字节long:   4个字节long long:  8个字节unsigned long:  4个字节32位编译器char :1个字节char*(即指针变量): 4个字...

2018-08-01 23:00:17 293

原创 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。

这个与上一篇是一样的思想。f(n) = f(n-1) + f(n-2) + f(n-3) + ... + f(n-(n-1)) + f(n-n) f(n-1) =  f(n-2) + f(n-3) + ... + f(n-(n-1)) + f(n-n) 。所以f(n) = 2*f(n-1)。class Solution {public: int jumpFloorII(...

2018-08-01 14:18:26 1417 1

原创 跳台阶---一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法

一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。题目刚开始我想到的是二叉树。左1右2,后来想想非常的麻烦,然后我找寻了一下规律。f(n) = f(n - 1)+f(n - 2).采用递归或者迭代比较方便,类似斐波那契数列。class Solution {public: int jumpFloor(int number) { ...

2018-08-01 13:51:13 1745

空空如也

空空如也

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

TA关注的人

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