c++
首席撩妹指导官
大数据码农,欢迎小伙伴们一起研究探索。
展开
-
c++链表
链表简介 链表是一种物理存储单元上不连续的存储结构,数据元素之间是通过链表中的指针进行链接。链表是由一系列的节点(链表中每一个元素称为节点)组成,节点可以在运行时动态生成。 每一个节点都包含两个部分:一个是存储数据的数据域,另一个是存储下一个节点地址的指针域。一般链表在一些需要快速插入/删除,而不太关心或者不需要随机访问的情况下使用。链表相对于数组:链表允原创 2017-07-28 17:53:36 · 403 阅读 · 0 评论 -
javaAVL树
什么是AVL树?AVL树,又称为平衡二叉树,它是一种特殊的二叉查找树(Binary Search Tree, BST),其每一个节点的左右子树的高度差不超过1。注意,一个节点的高度是从该节点到叶子节点的最长路径,所以,叶子节点的高度为0,而深度是指一个节点到树根的路径长度,两者是相反的概念。 一棵树的高度等于根节点的高度,而深度等于最大深度的叶子节点的深度,所以一个树的高度和深度是原创 2017-08-17 20:29:29 · 443 阅读 · 0 评论 -
c++构造函数,函数重载,复合类,类和对象
1.面向过程和面向对象主要区别可以简单概括为:面向过程的编程是一种直接的编程方法是按照编程语言的思路考虑问题;面向对象的编程是一种抽象度更高的编程方法,它的目标是使模块的抽象度更高,可复用性更好。2.面向对象的三大特征:封装性、继承性和多态性。3.封装:隐藏对象的属性和实现细节,仅对外提供公共访问方式。继承:子类继承父类的属性和方法,实现代码的复用。多态:C++原创 2017-07-24 16:07:38 · 1059 阅读 · 0 评论 -
c++经典编程题汇总
《c++》编程题试卷第三章1.编写一个求方程ax2 + bx + c = 0的根 的程序,用3个函数分别求当b2-4ac大于零、等于零、和小于零时的方程的根。要求从主函数输入a,b,c的值并输出结果。#include #include void equation_1 (int a, int b, int c){ double x1, x2, temp;原创 2017-07-24 20:18:02 · 35714 阅读 · 9 评论 -
经典C++笔试题目--100(编程练习)(91-100)
经典C++笔试题目--100(编程练习)(91-100)91、请编写一个 C 函数,该函数给出一个字节中被置 1 的位的个数。 【参考答案】[cpp] view plain copyunsigned int TestAsOne0(char log) { int i;转载 2017-07-24 20:09:34 · 1044 阅读 · 2 评论 -
c++面试题
c++面试题一 用简洁的语言描述 c++在 c 语言的基础上开发的一种面向对象编程的语言; 应用广泛; 支持多种编程范式,面向对象编程,泛型编程,和过程化编程;广泛应用于系统开发,引擎开发;支持类,封装,重载等特性。二 c 和 c++ 的区别C++ 在 c 的基础上添加类;C主要是面向过程,C + + 主要面向对象;C主要考虑通过一个过程将输入量经过各种运算后得转载 2017-07-24 20:06:22 · 444 阅读 · 0 评论 -
常见C/C++笔试、面试题
常见C/C++笔试、面试题我自己总结过一些常见的C++面试题,那个是基于一个同学的腾讯面经所问问题,再加上知识点扩展进行了总结,这个是网上之前就有的版本,比较基础,有些题目总结一下,不能忘了基础:1.求下面函数的返回值( 微软)复制代码int func(x) { int countx =0; while(x) {转载 2017-07-24 20:02:26 · 598 阅读 · 1 评论 -
C/C++笔试题
微软亚洲技术中心的面试题!!!1.进程和线程的差别。线程是指进程内的一个执行单元,也是进程内的可调度实体.与进程的区别:(1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位(2)并发性:不仅进程之间可以并发执行,同一个进程的多个线程之间也可并发执行(3)拥有资源:进程是拥有资源的独立单位,线程不拥有系统资源,但可以访问隶属于进程的资源. (4转载 2017-07-24 19:44:45 · 15551 阅读 · 1 评论 -
c++类和对象,构造函数,函数重载,复合类。
c++类和对象,构造函数,函数重载,复合类。1.面向过程和面向对象主要区别可以简单概括为:面向过程的编程是一种直接的编程方法是按照编程语言的思路考虑问题;面向对象的编程是一种抽象度更高的编程方法,它的目标是使模块的抽象度更高,可复用性更好。2.面向对象的三大特征:封装性、继承性和多态性。3.封装:隐藏对象的属性和实现细节,仅对外提供公共访问方式。继承:子类继原创 2017-07-24 16:14:01 · 1074 阅读 · 1 评论 -
最大连续子数组和
问题是这样的:一个整数数组中的元素有正有负,在该数组中找出一个连续子数组,要求该连续子数组中各元素的和最大,这个连续子数组便被称作最大连续子数组。比如数组{2,4,-7,5,2,-1,2,-4,3}的最大连续子数组为{5,2,-1,2},最大连续子数组的和为5+2-1+2=8。 下面按照时间复杂度逐步优化的顺序依次给出这三种算法。暴力求解法 该方法的思想非常简单,先原创 2017-07-31 17:25:04 · 297 阅读 · 0 评论 -
01背包问题和完全背包问题
01背包问题:一个背包总容量为V,现在有N个物品,第i个 物品体积为weight[i],价值为value[i],现在往背包里面装东西,怎么装能使背包的内物品价值最大?看到这个问题,可能会想到贪心算法,但是贪心其实是不对的。例如最少硬币找零问题,要用动态规划。动态规划思想就是解决子问题并记录子问题的解,这样就不用重复解决子问题了。动态规划先找出子问题,我们可以这样考虑:在物品比较少,转载 2017-07-31 17:18:57 · 923 阅读 · 0 评论 -
堆排序
堆又叫二叉堆,是一种常用的数据结构。在实现中,有最大堆和最小堆两种。最小堆常常用于优先队列,堆也可以用于排序。以最小堆为例:最小堆中,一个结点的值不大于它的孩子。 1 / \ 2 3 / \ / \ 4 5 6 7 / \ / 8 9 10原创 2017-07-31 17:15:01 · 208 阅读 · 0 评论 -
希尔排序
希尔排序又叫缩减增量排序,它的排序原理有点像插入排序。插入排序时,两个数的间隔为1,但是希尔排序时,间隔是有大缩小的,直至间隔为1.希尔排序的排序间隔有大缩小,初始间隔一般设为排序总数据长度的一般。希尔排序最坏时间复杂度为O(N^2),但是平均运行时间为O(N^5/4). [cpp] view plain copy#inc原创 2017-07-31 17:14:11 · 187 阅读 · 0 评论 -
为什么operator<<>>运算符重载一定要为友元函数呢?
如果是重载双目操作符(即为类的成员函数),就只要设置一个参数作为右侧运算量,而左侧运算量就是对象本身。。。。。。而 >> 或。。。。。。。。就只能申明为友元函数了。。。如果一定要声明为成员函数,只能成为如下的形式:ostream & operator{ return output;}所以在运用这个data不合符人的习惯。原创 2017-07-31 11:01:59 · 5163 阅读 · 1 评论 -
c++排序算法
冒泡排序冒泡排序(Bubble Sort)是一种简单的排序算法。它重复地走访过要排序的数列, 一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地 进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为 越小的元素会经由交换慢慢“浮”到数列的顶端。算法原理:(1)比较相邻的元素。如果第一个比第二个大,就交换他们两个。(2)对每一对相邻原创 2017-07-28 17:50:35 · 452 阅读 · 0 评论 -
JAVA 点对点聊天
服务器端:UserSeverFrame:import java.awt.BorderLayout;import java.awt.FlowLayout;import java.awt.GridLayout;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.eve原创 2017-08-31 17:28:35 · 597 阅读 · 0 评论