该题目跟求一个数组中的最大值和最小值一样,千万不要排序。只需要使用三个临时变量暂存最大序列的起始位置,序列长度,以及当前序列和。然后跟其他序列一一比对。
算法
本来初衷是想写一个洗牌算法。思路如下:第一趟:对于一个N个元素的集合,生成一个0到N的随机数,把该随机数坐标对应的元素和集合中第N-1个元素交换。第二趟:生成一个0到N-1的随机数,把该随机数坐标对应的元素和集合中的第N-2个元素交换。依次循环N次。时间复杂度为O(N),空间复杂度为O(1)
算法:随机从集合中获取元素集

本篇使用PowerShell语法演示单链表的反转。思路:1.从第二个结点开始,把后一个结点的指针指向前一个结点。2.第一个结点的Next节点要置空,否则会出现环。
算法:单链表反转
以前老师有讲过,《数据结构》这门课很重要,工作的过程中遇到的概率非常大。一点都不 […]
算法:PowerShell如何后续遍历树结构
碰到一道算法面试题: 说有100只兔子和100块钱,大兔子3块钱一只,小兔子1块 […]
算法100只兔子和100块钱
算法描述:这是一道简单的算法题:指定一个N*N的二位矩阵,以此从下->右->上->左赋值。算法分析
1.首先声明一个N*N的整形对称矩阵,所有元素默认值为0
2.对矩阵中的元素赋值,赋值总次数count={1,N*N}
3.依次从上往下,从左往右,从下往上,从右往左四轮循环赋值,每一轮遇到当前数组越界或者已赋值(数组元素大于0),表示本轮结束。
算法:PowerShell打印旋转矩阵
这可能是一个小面试题,给定字符串abbcccdeeet,包含了连续的字符,要求将 […]