关闭

C++双重模板

Template Template Paraments(双重模板参数)模板参数本身也可以是一个类模板,例如实现一个Stack class。为了使用其他类型的元素容器,使用者必须两次指定元素类型:一次是元素类型本身,另一次是容器类型:Stack vStack; //int stack,以vector为容器如果使用template template parameter...
阅读(238) 评论(0)

开始Java学习

Java学习笔记在学校一直用的是C/C++,工作需要,现在要开始学习Java了。之前很排斥,用java写了几行代码,感觉还挺不错的。摒弃语言宗教之争,什么工具适合干什么活儿,那就针对相应开发任务选择合适的语言。public Hello{ public static void main(String[] args){ System.out.println(“Hello Ja...
阅读(199) 评论(0)

生成窗口最大数组问题

给定一个整形的数组arr,和一个大小为w的窗口数组,从最左边滑到最右边,窗口每次向右滑动一个位置, 例如:int arr[] = { 4, 3, 5, 4, 3, 3, 6, 7 ,2,4,5,6,8,1,9,10};当窗口大小为3时, 生成的窗口数组为res[] = { 5, 5, 5, 4, 6, 7, 7, 7, 5, 6, 8, 8, 9, 10}; 下面是C++代码: //生成窗...
阅读(197) 评论(0)

给定一个数组,返回最大子数组的累加和并且返回该子数组

给定一个数组Arr,返回子数组的最大累加和 例如 arr[] = {1,-2,3,5,-2,6,-1};所有子数组中,[3,5,-2,6] 可以累加出最大和12 函数在设计的时候,应该考虑传入的数组Arr,同时要有一个传出数组,返回值会最大累加和,为整数 以下是代码 #include #include int maxSum(int arr[], int n,ve...
阅读(292) 评论(0)

只用递归函数和栈操作实现一个栈的逆序

//仅用递归函数和栈操作逆序一个栈 //需要实现两个递归函数,一个用来返回并移除栈底元素,另一个递归函数就是逆序函数 #include class Solution { public:     int getAndRemoveLastElement(stack& st)     {         int ret = st.top();         st.pop();...
阅读(494) 评论(0)

设计由两个栈组成的队列

//设计由两个栈组成的队列 //编写一个类,用两个栈实现队列,支持队列基本操作 //需要注意的是在是实现时TailSt不空时,不能对它Push操作, #include class myQueue {     void Push(int x)     {         FrontSt.push(x);     }     int Top()     {      ...
阅读(185) 评论(0)

设计一个getMin功能的栈,如果面试官让你写一个数组类,一定不要用指针去管理new出来原生的数组,那就是在给自己挖坑

//设计实现一个getMin功能的栈 #include #include using namespace std; class GetMinStack { public:     void push(int x)     {         if (DataStack.empty() && MinStack.empty())         {...
阅读(401) 评论(0)

对象的动态内存分配

对象的动态内存分配 主要的就是对new和delete关键字的用法和要点  处理复制和赋值 如果没有在类中编写自己的复制构造函数和赋值运算符,C++将自动生成。默认的方法递归调用对象数据成员的复制构造函数或者赋值运算符。然而对于C++内置类型,如int、double以及指针,只是提供表层(或者按位)复制或者赋值:只是将数据成员丛原对象直接复制或者赋值到目标对象。当为对象动态分配内存时,这样就会...
阅读(612) 评论(0)

复制构造函数和赋值构造函数

复制构造函数: 允许所创建的对象是另一个对象的精确副本。如果数据成员是对象,初始化意味着调用它们的复制构造函数。 复制构造函数采用源对象的所有数据字段。与其他构造函数类似,他没有返回值。在这个构造函数内部,应该复制源对象所有的数据字段。在编写复制构造函数时,需要注意浅复制和深复制的问题。 何时调用复制(拷贝)构造函数 C++中传递函数参数的默认方式是值传递,这意味着函数或者方法接收某个值或...
阅读(223) 评论(0)

字符串循环右移

字符串循环右移函数的实现已经有很多种方法了,我最近在做这道题的时候想到了一种暴力移位方法,思路很简单: 从最后一位字符往前交换移动,移至最左位,以此类推,循环就可以解决循环右移多位字符的方法 比如:"abcdefghi" 循环右移2位就是"hiabcdefg", 函数原型为 void RightLoopMove(char *pStr, unsigned short steps) 以下是实现...
阅读(380) 评论(0)

用c语言实现一个自己的atof()函数

用c语言实现atof()函数,将字符分解用乘法和除法实现转换,代码如下 *******************************************************************************************************************************************************************...
阅读(364) 评论(0)
    个人资料
    • 访问:3697次
    • 积分:144
    • 等级:
    • 排名:千里之外
    • 原创:11篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类