上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 19 下一页
摘要: 本博文为博主自己对0-1背包问题的理解并结合网上的博客所写,因为个人水平有限,若是有错误的地方欢迎指出。谢谢! 问题描述: 给定n种物品和一个背包,物品i的重量是w[i],其价值为v[i],背包容量为cap,如何选择转入背包的物品,使得装入背包中的物品价值总最大? 问题归纳 对于某一种物品,要么装入 阅读全文
posted @ 2017-08-16 17:16 王大咩的图书馆 阅读(417) 评论(0) 推荐(0) 编辑
摘要: 题:定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。 思路:若是只要返回最小一个元素,只要每次加入时,和栈顶元素对比就行,小于栈顶元素就先删除栈顶元素,然后加入。但若是想所有元素的出栈顺序是从小到大呢? 这时我们需要一个辅助栈,辅助栈中从大到小(栈底到栈顶)依次存放当前数据栈中 阅读全文
posted @ 2017-08-16 11:22 王大咩的图书馆 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 题:输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 方法一:把一个整数减去1,再和原整数做与运算,会把该整数最右边的1变为0。如,1100,其第二位是从最右边数起的第一个1,见1以后变为1011,即第二位左边的1保持不变,右边的从0变为1,与原先的数1100做与运算,结果为1000 阅读全文
posted @ 2017-08-16 10:45 王大咩的图书馆 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 本文是我用到swap函数时,对其产生好奇,所以结合网上有关博文写下的。个人水平有限,若有错误的地方,欢迎留言指出。谢谢! 一、通用的函数交换模板 T为类型,可根据实际需要使用相应的类型 二、针对int类型的优化 使用异或,整数异或本身为结果0;一个数异或0结果为本身; 三、自定义swap时,注意事项 阅读全文
posted @ 2017-08-15 15:33 王大咩的图书馆 阅读(52937) 评论(0) 推荐(0) 编辑
摘要: 题:输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。 方法一:O(n)的算法,不过要改变数组。 思路:利用快排的思想,以最后一个元素为基准,将数组一分为二,左边小于基准,右边大于基准,完成一次趟分割,基准的下标为index,这 阅读全文
posted @ 2017-08-15 15:09 王大咩的图书馆 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 题:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 思路:常规思路是先排序,(若有)取中间值即可,时间复杂度为O(nlogn)。定义两个 阅读全文
posted @ 2017-08-15 10:46 王大咩的图书馆 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 本文是个人针对《C++ Primer(第5版)》的个人理解和网上相关博文整理而成。若有不妥处欢迎留言指出,谢谢! 一、const与普通变量、指针和引用 1、const修饰普通变量 希望定义一种变量,其值不被改变。写法如下: 使用的注意点是:因为const对象一旦创建后其值不能在改变,所以const对 阅读全文
posted @ 2017-08-14 20:36 王大咩的图书馆 阅读(767) 评论(0) 推荐(0) 编辑
摘要: 题:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 思路:栈为先进后出,队列为先进先出。大致思想是,先将元素放入栈1中,然后将栈1的元素,全部放入栈2中。值得注意的是,当栈2中有元素时,应先出栈,然后才能将栈1的元素放入栈2中;若还想将元素放入栈1,从而再放入栈 阅读全文
posted @ 2017-08-14 13:22 王大咩的图书馆 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 题:输入一个链表,从尾到头打印链表每个节点的值。 思路:方法比较多,这里列举几种: 1、若是能修改 则反转链表以后,在从头到尾打印; 2、不能修改 (1)使用向量,然后从头到尾遍历,最后反转向量即可; (2)使用栈,利用先进后出的特点 这里的来源是牛客网的题,代码如下: 指针最好都先判空!!! 阅读全文
posted @ 2017-08-14 11:31 王大咩的图书馆 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 题:请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 题意:注意这里有两种意思,一是可以创建新的字符串,二是在原字符串上修改 思路:第一种情况,只要从左到右遍历字符串,将空格换成"%20"即可, 阅读全文
posted @ 2017-08-14 11:18 王大咩的图书馆 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 本文基于《C++ Primer(第5版)》中14章和《More Effective C++》条款7,整理而成。 其实写这篇博客之前,内心还是很忐忑的,因为,博主的水平很有限,视野比较窄,要是在理解书的过程中有了偏差,给读到这篇博客的人以错误的认识,那罪过就大了。再次声明本文仅是简介,若是有错误的地方 阅读全文
posted @ 2017-08-13 20:58 王大咩的图书馆 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 本文是个人对LeetCode中字符串类型题目的总结,纯属个人感悟,若有不妥的地方,欢迎指出。 一、有关数字 1、数转换 题Interger to roman和Roman to integer这两题是罗马数字和整数之间的相互转换,首先要懂得什么是罗马数字以及相应的组数规则。LeetCode的题中给出的 阅读全文
posted @ 2017-08-12 01:12 王大咩的图书馆 阅读(3063) 评论(0) 推荐(0) 编辑
摘要: 本文基于万常选编著的《数据库系统原理与设计》,为个人笔记整理。着重讲解文件系统和数据库管理系统。 数据管理技术经历了人工管理、文件系统和数据库管理系统3个阶段。 一、人工管理系统 人工管理阶段的数据时面向应用程序的,一个数据集只能对应一个程序,程序与数据之间的关系如下图: 当多个应用程序涉及某些相同 阅读全文
posted @ 2017-08-11 00:47 王大咩的图书馆 阅读(1943) 评论(0) 推荐(0) 编辑
摘要: 本文基于《C++ Primer(第五版)》和网上博文的总结而成。个人水平有限,若有错误,欢迎指出。 一、为什么要用inline函数 我们编写一个小函数,以实现比较两个string形参的长度并返回长度较小的string的引用,如下(P201): 这样写有如下好处: (1)阅读和理解shorterStr 阅读全文
posted @ 2017-08-10 14:46 王大咩的图书馆 阅读(318) 评论(0) 推荐(0) 编辑
摘要: 本文基于《C++ Primer(第五版)》,纯属个人笔记整理。若有错误欢迎大家留言指出。 一、为什么要用友元和其缺点? 采用类的机制后实现了数据的隐藏与封装,类的数据成员一般定义为私有成员,成员函数一般定义为公有的,依此提供类与外界间的通信接口。有时候,其他类或者函数要访问该类的非公有成员,可以令其 阅读全文
posted @ 2017-08-10 00:53 王大咩的图书馆 阅读(4408) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 19 下一页