代码编织梦想

【剑指offer | c++】面试题一:赋值运算符函数-爱代码爱编程

《剑指Offer:名企面试官精讲典型编程题(第二版)》 开个新坑,为明年秋招提前复习(预习 开卷! 如下类型CMyString的声明,请为该类型添加赋值运算符函数。 class CMyString { pu

两个链表的第一个公共节点_链表中环的入口(剑指offer)_两个链表的第一个公共节点入口-爱代码爱编程

两个链表的第一个公共结点 题目链接 首先我们想到的就是先让一个链表先遍历差值个单位节点,当两个链表长度相等时,同时遍历如果有相等节点就是有公共节点! //先计算长度差,然后让一个指针先走差值单位! public cl

java版 剑指offer笔记(一)_剑指offer java版-爱代码爱编程

1.数组中重复的数字 思路1: 使用哈希表,哈希表是一种根据关键码(key)直接访问值(value)的一种数据结构。而这种直接访问意味着只要知道key就能在O(1)时间内得到value,因此哈希表常用来统计频率、快速检验

52.两个链表的第一个公共节点-爱代码爱编程

题目 输入两个链表,找出它们的第一个公共节点。 解题思路 遍历两个链表,先求出两个链表的长度len1和len2,让长的链表先移到|len1-len2|个节点;再让两个链表同时移到,寻找第一个公共节点 代码 /**

jz3 数组中重复的数字-爱代码爱编程

在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组[2,3,1,0,2,5,3],那么对应的输出是2或者3。存在不合法的输入的话输出-1 数据范围:0\le n \le 10000 \0≤n≤10000 

[剑指offer 56 -爱代码爱编程

题目如下: 这道题像我这种萌新,在一开始的时候想的是新建一个数组,用空间换时间,但是既然空间复杂度要求O(1),那这个方法就不行了。如果说只有一个数字出现一次,那么用异或运算就可以做到,但是这道题如果把所有的数字异或起来得到的是两个只出现了一次数字a和b的异或结果c。 于是我开始查找如何把异或还原出来的方法...... 虽然不是自己想出来的

剑指offer07-爱代码爱编程

26. 树的子结构 输入两棵二叉树A和B,判断B是不是A的子结构。(约定空树不是任意一个树的子结构) B是A的子结构, 即 A中有出现和B相同的结构和节点值。 思路: 判断一棵树是否是另一棵树的子结构,注意子结

面试题46. 求1+2+...+n_输入任意正整数n,求1!+2!+……+n!并输出。请将下列代码补充完整。 n=eval(inp-爱代码爱编程

面试题46. 求1+2+…+n 题目描述 求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。 思路: 不能用for和w

57-爱代码爱编程

题目 输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得它们的和正好是s。如果有多对数字的和等于s,则输出任意一对即可。 解题思路 方法一:采用二分查找 比如可以先固定一个值,算出它和target的一个差值,

[剑指offer]-爱代码爱编程

温馨 小提示:如果代码看不懂,不妨拿出纸和笔,找几个例子,多走几遍程序,                    再搜索一下相关的博客,慢慢的就加深理解了。 题目: 给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。   代码思路:         一种方法是用 hashmap来存储和查找节点;  

连续子数组的最大和_unity 最大子数组-爱代码爱编程

题目描述         HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含

剑指offer:面试题16 反转链表-爱代码爱编程

剑指offer:面试题16 反转链表 链表节点定义如下: typedef int ElemType; typedef struct LNode { ElemType data; struct LNode *pNext; }LNode, *LinkList; 1  题意分析: 直接想到头插法建立单链表。 2 

34、 二叉树中和为某一值的路径-爱代码爱编程

题目 给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root = [5,4,8,11,null,13,4,7,2,null,null,5,1], targetSum = 22 输出:

和为s的两个数_和为s两个数-爱代码爱编程

题目:输入一个递增排序的数组和一个数字s,在数组中查找两个数,使得他们的和正好是s。如果有多对数字的和等于s,输出任意一对即可。 例如输入数组{1,2,4,7,11,15}和数字15。由于4+11=15,因此输出4和11。 方法一:时间复杂度为o(n*n),首先在数组中固定一个数字,再依次判断数组中该元素之后的某个数字与它的和是不是

42.连续子数组的最大和-爱代码爱编程

题目 输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。 要求时间复杂度为O(n)。 解题思路 采用动态规划 定义dp【】的含义,以元素nums[i]为结尾的连续子数组最大的和找出

剑指offer——扑克牌顺子_php 剑指offer:扑克牌的顺子-爱代码爱编程

题目描述 LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子.....LL不高兴了,他想了想,决定大\小 王可以看成

47.礼物的最大价值-爱代码爱编程

题目 在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个棋盘及其上面的礼物的价值,请计算

剑指offer.平衡二叉树_平衡二叉树 offer-爱代码爱编程

题目: 输入一颗二叉树的节点,判断该树是不是平衡二叉树。如果某二叉树中任意节点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。 思路: 基于对二叉树深度的理解,我们就很简单可以想到如果每个节点的而右子树的深度相差都不超过1,那么按照定义它就是一棵平衡二叉树。但这种思路的时间效率不高。会出现子节点重复遍历的情况。 但如果我们用后序遍历的方法来

57-爱代码爱编程

题目 输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数)。 序列内的数字由小到大排列,不同序列按照首个数字从小到大排列。 解题思路 采用滑动窗口 代码 class Sol

50.第一次只出现一次的字符-爱代码爱编程

题目 在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。 解题思路 方法一:哈希表 遍历字符数组 方法二:有序哈希表 代码 class Solution { pub