代码随想录第一天|数组part01】的更多相关文章

第一题150. 逆波兰表达式求值 根据 逆波兰表示法,求表达式的值. 有效的算符包括 +.-.*./ .每个运算对象可以是整数,也可以是另一个逆波兰表达式. 注意 两个整数之间的除法只保留整数部分. 可以保证给定的逆波兰表达式总是有效的.换句话说,表达式总会得出有效数值且不存在除数为 0 的情况. ψ(`∇´)ψ 我的思路 题目上提示的已经很清晰了 去掉括号后表达式无歧义,上式即便写成 1 2 + 3 4 + * 也可以依据次序计算出正确结果. 适合用栈操作运算:遇到数字则入栈:遇到算符则取出栈…
第一题344.反转字符串 编写一个函数,其作用是将输入的字符串反转过来.输入字符串以字符数组 s 的形式给出. 不要给另外的数组分配额外的空间,你必须原地修改输入数组.使用 O(1) 的额外空间解决这一问题. ψ(`∇´)ψ 我的思路 取到字符串的中点,依次交换前后两部分的位置 package string; public class ReverseString { public static void reverseString(char[] s) { char temp; for (int…
很早以前就听过李刚老师的疯狂java系列很不错,所以最近找一本拿来拜读,再此做下读书笔记,促进更好的消化. 使用Java数组之前必须先对数组对象进行初始化.当数组的所有元素都被分配了合适的内存空间,并指定了初始值时,数组初始化完成.程序以后将不能重新改变数组对象在内存中的位置和大小. 从用法角度来看,数组元素相当于普通变量,程序既可把数组元素的值赋给普通变量,也可把普通变量的值赋给数组元素. 1.1数组初始化 1.1.1 Java数组是静态的 Java语言是典型的静态语言,因此Java的数组是静…
链表 今天主要是把链表专题刷完了,链表专题的题目不是很难,基本都是考察对链表的操作的理解. 在处理链表问题的时候,我们通常会引入一个哨兵节点(dummy),dummy节点指向原链表的头结点.这样,当我们对头结点进行操作的时候就可以直接使用dummy节点,不用进行特判. 在对链表进行操作的时候 while的循环条件也是容易犯错的地方,我们不应该死记这题该是cur != null还是cur.next != null又或是其他.而是应该画个图,手动模拟一下,便知道结束的条件. 203.移除链表元素 题…
前言 2.25日开始记录自己的博客生涯以及代码随想录训练营的每日内容 一.题目链接怎么找?怎么设置连接? 力扣题目链接1:力扣 二.正文怎么写? 二分查找 算法思路: 二分查找需要保证数组为有序数组同时无重复元素,否组无法通过二分查找进行判断(结果无法唯一) 二分查找通过不断收缩数组,趋近中间值进行,由于有序,可以通过中间值与目标的比较实现 三.代码怎么粘贴? 怎么进行注释?能不能修改? // 版本二 class Solution { public: int search(vector<int>…
背包问题 问题描述 背包问题是一系列问题的统称,具体包括:01背包.完全背包.多重背包.分组背包等(仅需掌握前两种,后面的为竞赛级题目) 下面来研究01背包 实际上即使是最经典的01背包,也不会直接出现在题目中,一般是融入到其他的题目背景中再考察 因为是学习原理,所以先跳过最原始的问题模板来学. 01背包的原始题意是:(标准的背包问题) 有n件物品和一个最多能背重量为 w 的背包.第 i 件物品的重量是 weight[i] ,得到的价值是 value[i] .每件物品只能用一次,求解将哪些物品装…
原文:分享非常有用的Java程序 (关键代码)(四)---动态改变数组的大小 /** * Reallocates an array with a new size, and copies the contents * * of the old array to the new array. * * @param oldArray the old array, to be reallocated. * * @param newSize the new array size. * * @return…
<代码的第一行--Android>已经上市近一个月,现在的情况是相当不错的销售,也特别感谢众多朋友的支持. 其实一本好书,假设你想卖.除了给予外力所要求的内容.封面设计是至关重要的,这本书的封面是毋庸置疑的丰富的内容,并披上了华丽的外衣. 作为一个作家.就是将内容写好而已,其它全部相关工作都不是由我负责的.本书封面设计的全部细节都是由陈冰老师一手抓起的,之后他在图灵社区上记录了本书封面的诞生过程.在经过他允许的情况下.我将这篇文章转到我的博客上,也是让感兴趣的朋友们了解一些不为人知的小故事.…
定义和用法 $.merge() 函数用于合并两个数组内容到第一个数组. 语法 $.merge( first, second )   参数 描述 first Array类型 第一个用于合并的数组,合并后将包含第二个数组的内容 second Array类型 第二个用于合并的数组,该数组不会被修改…
59.螺旋矩阵II 题目链接:59.螺旋矩阵II 题目描述:给定一个正整数 n,生成一个包含 1 到 n^2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵. 示例: 输入: 3 输出: [ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ] 思考 螺旋矩阵没有暴力破解,只能通过四个for循环重复实现对不同数字的输入.螺旋矩阵的重要点在于判断最后一个列的数字个数和奇数大小矩阵时的中间位置的数字. 整个矩阵的实现是由两组循环实现的,最外层是while循环,用来控制一周的整…