![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
python
harry-lin
待业,自学python,java,javascript,日语。对编程有一定基础,对算法有有一定研究。
展开
-
linux 安装pyenv
github原创 2018-07-14 19:10:08 · 952 阅读 · 0 评论 -
获取栈中任意位置的元素
public int getElement(Stack<Integer> stack, int position) { int result = stack.pop(); if (stack.size() == position) {// stack.push(result); re...转载 2018-07-14 19:49:59 · 6075 阅读 · 2 评论 -
获取数组中子串乘积的最大值
【题目】给定一个数组,例如arr = {-2.5, 4, 2, 3, 0, 8, 4}; 那个8和4相乘得到32,是连续数相乘得到的最大值,得到该值即可。 【解答】注意此过程的三种情况即可,最大数成为最大,最小数变成最大,当前数最大。时间复杂度O(n)。 public static double getMax(double[] arr) { if(arr == null |...转载 2018-07-14 19:48:53 · 494 阅读 · 0 评论 -
窗口最大值数组
【题目】给出一个整形数组,例如arr = {5,4,3,5,6,7,6},窗口大小为w=3,窗口每次向右移动一位,输出每个窗口中最大值组成的数组。 [5,4,3,]5,6,7,6 窗口最大值为5 5,[4,3,5,]6,7,6 窗口最大值为5 5,4,[3,5,6,]7,6 窗口最大值为6 5,4,3,[5,6,7,]6 窗口最大值为7 5,4,3,5,[6,7,6] 窗口最大值为7 则输出的数组...转载 2018-07-14 19:47:51 · 262 阅读 · 0 评论 -
随机数扩充
(1)题目 给定一个等概率随机产生1~5的随机函数rand1To5如下: public int rand1To5() { return (int) (Math.random() * 5) + 1; } 除此之外不能使用任何额外的随机机制,请用rand1To5实现等概率随机产生1~7的随机函数rand1To7。 Random random = new Random(); in...转载 2018-07-14 19:47:13 · 430 阅读 · 0 评论 -
栈在表达式求值中的应用
一. 栈ADT首先我们使用java来实现栈ADT,这里不使用java提供的Stack类, 而是使用ArrayList来实现,具体看代码:public class MyStack { public ArrayList<String> stack = new ArrayList<String>(); public String pop() { ...转载 2018-07-14 19:46:24 · 1318 阅读 · 0 评论 -
数组的循环右移
题目的大意是将一个长度为size的数组A内的元素循环右移n位(当然左移也可以),比如数组 {1, 2, 3, 4, 5}右移3位之后就变成{3, 4, 5, 1, 2}。 1. 这题最简单的做法是开另一个大小一样的数组B,遍历一下,令B[(i+n) % size] = A[i],再将B的内容写回到A即可。这个方法的时间复杂度为O(N),空间复杂度也为O(N)。public int[] moveDa...转载 2018-07-14 19:45:46 · 9918 阅读 · 0 评论 -
leetcode】Longest Substring Without Repeating Characters
题目】 Given a string, find the length of the longest substring without repeating characters.Examples:Given “abcabcbb”, the answer is “abc”, which the length is 3.Given “bbbbb”, the answer is “b”, with t...转载 2018-07-14 19:44:46 · 81 阅读 · 0 评论 -
洗牌算法
经典洗牌算法void Shuffle(int[] array) { int value; int length = array.length; Random random = new Random(); for(int i= 0; i < length; i++) { value ...转载 2018-07-14 19:43:58 · 116 阅读 · 0 评论 -
最大连续子数列和(在线处理算法)
问题描述最大连续子数列和一道很经典的算法问题,给定一个数列,其中可能有正数也可能有负数,我们的任务是找出其中连续的一个子数列(不允许空序列),使它们的和尽可能大。我们一起用多种方式,逐步优化解决这个问题。暴力方法求出所有可能连续子列的和,时间复杂度O(N^3)int MaxSubSequm1(int A[], int N){ int ThisSum, MaxSum = 0; in...转载 2018-07-14 19:43:06 · 720 阅读 · 1 评论