算法笔记
算法笔记
-九斤-
重要的不是你在什么平台,而是你有什么技术,能提供什么价值。
展开
-
统计学生成绩(1)Python
代码scores = input("请输入10个学生的成绩,格式(中文逗号)33,44,55,66……\n")scores1 = scores.split(",")scores2 = list(map(int, scores1))print("最高成绩:%d" % max(scores2))print("最低成绩:%d" % min(scores2))print("平均成绩:%.1f" % (sum(scores2)/len(scores2)))思路用scores接收从键盘上输入的原创 2022-04-22 12:10:09 · 6211 阅读 · 0 评论 -
螺旋打印二维数组-java
题目:螺旋打印二维数组。解题思路:问题点:怎么构建一个螺旋的二维数组1 2 3 412 13 14 511 16 15 610 9 8 7分析:1、构建一个二维数组,按照顺时针的方向依次填入矩阵中1、2、3、4、5、6、7、8、9……问题拆分: 先搞最外面一层,再搞下一层,依次类推,直到...原创 2020-04-19 12:43:54 · 846 阅读 · 1 评论 -
《剑指offer》把字符串转换成整数-Java
题目描述将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0输入描述:输入一个字符串,包括数字字母符号,可以为空输出描述:如果是合法的数值表达则返回该数字,否则返回0示例1输入+2147483647 1a33输出2147483647 0思路:这个题本...原创 2020-04-19 01:51:29 · 143 阅读 · 0 评论 -
《剑指offer》两个栈实现队列-Java
题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。import java.util.Stack;public class Solution { Stack<Integer> stack1 = new Stack<Integer>(); Stack<Integer> stack2 = new ...原创 2020-04-18 22:53:56 · 128 阅读 · 0 评论 -
《剑指offer》从尾到头打印链表-Java
题目描述输入一个链表,按链表从尾到头的顺序返回一个ArrayList。/*** public class ListNode {* int val;* ListNode next = null;** ListNode(int val) {* this.val = val;* }* }...原创 2020-04-18 20:00:23 · 115 阅读 · 0 评论 -
《剑指offer》替换空格-Java
public class Solution { public String replaceSpace(StringBuffer str) { if(str.length() == 0){ return ""; } // 不借助新的变量,后续遍历 int count = 0...转载 2020-04-18 19:11:39 · 123 阅读 · 0 评论 -
《剑指offer》替换空格-Python
题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。Python:# -*- coding:utf-8 -*-class Solution: # s 源字符串 def replaceSpace(self, s): # write code...原创 2020-04-18 17:43:12 · 131 阅读 · 0 评论 -
《剑指offer》不用加减乘除做加法-Java
题目描述写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。public class Solution { public int Add(int num1,int num2) { int sum = 0, carry = 0; do{ sum = num1 ^ num2; ...原创 2020-04-18 17:41:05 · 107 阅读 · 0 评论 -
《剑指offer》二维数组中的查找-Java
public class Solution { public boolean Find(int target, int [][] array) { int rows = array.length - 1; int colums = array[0].length - 1; int i = rows, j = 0; ...原创 2020-04-18 17:39:27 · 119 阅读 · 0 评论 -
python《剑指offer》-跳台阶和变态跳台阶
跳台阶题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。解题思路设台阶数为n,总跳数为sumn=0,sum=0(或者不存在这种台阶,假设为0)n=1,sum=1n=2,sum=(1,1)+(2)=2n=3,sum=(1,1,1)+(1,2)+(2,1)=3n=4,sum=(1,1,1...原创 2020-01-04 00:37:28 · 130 阅读 · 0 评论 -
python《剑指offer》-求1+2+3+...+n
题目描述求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。选择语言:Python解题思路:1、使用递归方式求解。1+2+3+...+n的递推式为:f(n)=n+f(n-1)# -*- coding:utf-8 -*-class Solution: def ...原创 2020-01-04 00:03:52 · 766 阅读 · 0 评论 -
《剑指offer》-斐波那契数列
题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39代码(Python语言):第一种(https://www.nowcoder.com/profile/455863/codeBookDetail?submissionId=677096):def Fibonacci(self, n): a = [...原创 2020-01-01 22:40:56 · 170 阅读 · 0 评论 -
力扣-1122. 数组的相对排序-python3
题目表述给你两个数组,arr1 和arr2,arr2中的元素各不相同arr2 中的每个元素都出现在arr1中对 arr1中的元素进行排序,使 arr1 中项的相对顺序和arr2中的相对顺序相同。未在arr2中出现过的元素需要按照升序放在arr1的末尾。示例:输入:arr1 = [2,3,1,3,2,4,6,7,9,2,19], arr2 = [2,1,4,3...转载 2019-08-05 19:24:21 · 296 阅读 · 0 评论 -
力扣-1137. 第 N 个斐波那契数-python3-简单
题目表述泰波那契序列Tn定义如下:T0 = 0, T1 = 1, T2 = 1, 且在 n >= 0的条件下 Tn+3 = Tn + Tn+1 + Tn+2给你整数n,请返回第 n 个泰波那契数Tn 的值。示例 1:输入:n = 4输出:4解释:T_3 = 0 + 1 + 1 = 2T_4 = 1 + 1 + 2 = 4示例 2:输入:n = 25...原创 2019-08-05 17:44:56 · 213 阅读 · 0 评论 -
剑指 offer || 重建二叉树
题目描述: 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。解题思路: (1)明白什么是前序遍历和中序遍历 前序遍历:根--左--右 中序遍历:左--中...原创 2019-03-14 14:36:57 · 137 阅读 · 0 评论 -
《剑指 offer》用两个栈实现队列-Java
题目描述: 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。解题思路: 栈操作的特点是“先进后出”,队列的特点是“先进先出”。现在要用栈来模仿队列的操作。此题借助两个栈(stack1、stack2)来实现队列的入队和出队操作。 (1)入队: 假设元素入栈的时候,默认到stack1,则不对stack2进行操作。 (2)出...原创 2019-03-14 09:22:17 · 117 阅读 · 0 评论