12 2017 档案
摘要:函数重载 如果同一作用域内的几个函数名字相同但形参列表不同,我们称之为重载函数。 main函数不能重载 对于重载函数来说,它们应该在形参数量或形参类型上有所不同。 不允许两个函数除了返回类型外其他所有的要素都相同。 有时候两个形参列表看起来不一样,实际上是相同的 形参名只是起到了帮助记忆的作用。有没
阅读全文
摘要:main函数是演示c++程序如何向函数传递数组的好例子。 有时我们需要给main传递实参,这时候定义main函数 输出如下: 因为没有在控制台下输入实参,所以argc中只含有1个字符串,也就是exe的路径 在控制台下首先进入exe的路径然后输入实参,结果如下
阅读全文
摘要:编写一个函数,令其交换两个int指针。 交换两个值可以使用两种形式,一种是使用引用传递实参进行交换,另一种是使用指针以值传递的方式进行交换。 题目要求交换两个int指针,也可以参考交换值的两种形式。 1、使用指向指针的指针进行交换。 2、使用引用来传递指针进行交换、 测试代码如下: 测试结果如下:
阅读全文
摘要:函数基础 一个典型的函数定义包括以下部分:返回类型、函数名字、由0个或多个形参组成的列表以及函数体。其中形参以逗号隔开,形参列表位于一个圆括号之内,函数指向的操作在语句块内,也就是函数体。 函数调用 使用调用运算符来执行函数,调用运算符的形式是一对圆括号,它作用于一个表达式,该表达式是函数或者指向函
阅读全文
摘要:Implement int sqrt(int x). Compute and return the square root of x. x is guaranteed to be a non-negative integer. Example 1: Input: 4 Output: 2 Exampl
阅读全文
摘要:On a staircase, the i-th step has some non-negative cost cost[i] assigned (0 indexed). Once you pay the cost, you can either climb one or two steps. Y
阅读全文
摘要:Find the minimum length word from a given dictionary words, which has all the letters from the string licensePlate. Such a word is said to complete th
阅读全文
摘要:Implement strStr(). Return the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack. Example 1: Input: haystac
阅读全文
摘要:类型转换 在C++语言中,某些类型之间有关联,如果两种类型有关联,那么当程序需要其中一种类型的运算对象时,可以用另一种关联类型的对象或值来替代。换句话说,如果两种类型可以相互转换,那么它们就是关联的。 例如 何时发生隐式转换 1、在大多数表达式中,比int类型小的整型值首先提升为较大的整数类型 2、
阅读全文
摘要:点运算符和箭头运算符都可以用于访问成员,其中,点运算符获取类对象的一个成员;箭头运算符与点运算符有关 ptr->mem 等价于 (*ptr).men 因为解引用运算符的优先级低于点运算符,所以执行解引用运算的子表达式两端必须加上括号。如果没有括号,代码的含义就大不相同了 箭头运算符作用于一个指针类型
阅读全文
摘要:主要分析除法运算符和求余运算符。 除法运算符/主要用于对两个整数进行求商。并且商一律向0取整(即直接切除小数部分) 求余运算符就比较复杂了 如果m和n是整数且n非0,则表达式(m / n)* n + m % n 的求值结果与m相等 如果m%n不等于0,则它的符号与m相同。 除了-m导致溢出的特殊情况
阅读全文
摘要:数组 数组是存放类型相同的对象的容器。这些对象本身没有名字,需要通过其所在位置访问。数组的大小确定不变,不能随意向数组中添加元素。 数组是一种复合类型,声明型如a[d],a为数组名,b为数组维度(说明数组中元素的个数)。 数组初始化 默认情况下,数组的元素被默认初始化。在函数内部定义了某种内置类型的
阅读全文
摘要:面向过程中的static static修饰局部变量 static修饰局部变量时,使得被修饰的变量成为静态变量,存储在静态数据区。数据生命周期与程序相同。在main函数之前初始化,在程序退出时销毁。 局部静态变量使得该变量在退出函数后,不会被销毁,因此再次调用该函数时,该变量的值与上次退出时值相同。需
阅读全文
摘要:标准库类型string表示可变长的字符序列 定义和初始化string对象 不使用等号为直接初始化,使用等号 为拷贝初始化 string对象对大小写敏感。 读取string cin >> s; string对象会忽略空白,从第一个真正的字符开始读起,直到遇到下一个空白为止。 读取位置数量的string
阅读全文
摘要:Given a list of sorted characters letters containing only lowercase letters, and given a target letter target, find the smallest element in the list t
阅读全文
摘要:类型别名 类型别名是一个名字,它是某种类型的同义词。 定义类型别名可以使用关键字typedef 定义类型别名也可以使用别名声明 指针、常量和类型别名 声明语句中用到pstring时,其基本数据类型是指针,此时const pstring表示常量指针。 auto类型说明符 用它就能让编译器替我们取分析表
阅读全文
摘要:复合类型 复合类型是指基于其他类型定义的类型:如引用和指针等 一条声明语句由一个基本数据类型和紧随其后的一个声明符列表组成。 引用 引用为对象起了另外一个名字,引用类型引用另外一种类型,通过将声明符写成&d的形式来定义引用类型,其中d是声明的变量名 引用必须被初始化:一般在初始化变量时,初始值会被拷
阅读全文
摘要:变量 变量定义的基本形式:首先是类型说明符,随后紧跟着一个或多个变量名组成的列表,其中变量名以逗号分隔,最后以分号结束。 对象(变量)是具有某种数据类型的内存空间。 列表中每个变量名的类型都由类型说明符指定,定义时还可以为一个或多个变量赋初值。 在同一条定义语句中,可以用先定义的变量值去初始化后定义
阅读全文
摘要:32bit和64bit编译器下的基本数据类型所占的字节数 当一个算术表达式中既有无符号数又有int值时,那个int值会转换成无符号数(用无符号数的模 - int的绝对值)。 当从一个无符号数中减去一个值时,不管这个值是不是无符号数,我们都必须确保结果不能是一个负值。 整型字面值 20 /*十进制*/
阅读全文
摘要:什么是回调(Callback)函数 回调函数(Callback Function)是怎样一种函数呢? 函数是用来被调用的,我们调用函数的方法有两种: 直接调用:在函数A的函数体里通过书写函数B的函数名来调用之,使内存中对应函数B的代码得以执行。这里,A称为“主叫函数”(Caller),B称为“被叫函
阅读全文
摘要:Given an integer array, you need to find one continuous subarray that if you only sort this subarray in ascending order, then the whole array will be
阅读全文
摘要:选择排序的概念 选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。 选择排序的主要特点与数据
阅读全文
摘要:Reverse bits of a given 32 bits unsigned integer. For example, given input 43261596 (represented in binary as 00000010100101000001111010011100), retur
阅读全文
摘要:Winter is coming! Your first job during the contest is to design a standard heater with fixed warm radius to warm all the houses. Now, you are given p
阅读全文
摘要:Design a stack that supports push, pop, top, and retrieving the minimum element in constant time. push(x) -- Push element x onto stack. pop() -- Remov
阅读全文
摘要:Find the nth digit of the infinite integer sequence 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ... Note:n is positive and will fit within the range of a 32-bi
阅读全文
摘要:首先需要明确一个概念,就是*p++与(*p)++的区别。 *p++:对p取值,然后对p指针增加。 (*p)++:对p取值,然后对值增加。 ++a:表示取a的地址,对a的值进行增加,然后把这个值放入寄存器。结果可以作为左值。 实现代码如下: a++:表示取a的地址,把这个值放入寄存器,然后对内存中的a
阅读全文
摘要:给定一个包含 n 个整数的排序数组,找出给定目标值 target 的起始和结束位置。 如果目标值不在数组中,则返回[-1, -1] 样例 给出[5, 7, 7, 8, 8, 10]和目标值target=8, 返回[3, 4] 通过找出target的左边界(详解见[LintCode] First Po
阅读全文
摘要:给定一个排序的整数数组(升序)和一个要查找的整数target,用O(logn)的时间查找到target第一次出现的下标(从0开始),如果target不存在于数组中,返回-1。 样例 在数组 [1, 2, 3, 3, 4, 5, 10] 中二分查找3,返回2。 根据二分搜索的定义,找出这个target
阅读全文
摘要:二分搜索定义 二分搜索算法是一种在有序数组中查找某一特定元素的搜索算法。搜索过程中从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结束;如果某一特定元素大于或小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较,如果在某一步骤数组为空,则代表找不到
阅读全文
摘要:Given an array of integers sorted in ascending order, find the starting and ending position of a given target value. Your algorithm's runtime complexi
阅读全文
摘要:作用:声明外部变量。使变量或对象可以被跨文件访问 c++语言支持分离式编译机制,该机制允许将程序分割为若干个文件,每个文件可被独立编译。 因此在编译期间,各个文件中定义的全局变量互相不透明,也就是说,在编译时,全局变量的可见域限制在文件内部。 对于A.cpp和B.cpp中,分别含有同名全局变量i,两
阅读全文
摘要:Given two sentences words1, words2 (each represented as an array of strings), and a list of similar word pairs pairs, determine if two sentences are s
阅读全文
摘要:An image is represented by a 2-D array of integers, each integer representing the pixel value of the image (from 0 to 65535). Given a coordinate (sr,
阅读全文

浙公网安备 33010602011771号