文档章节

基础常用算法

昏鸦
 昏鸦
发布于 2017/04/07 11:14
字数 536
阅读 8
收藏 0

1:#### 判断是个整数是不是回文

#!/usr/bin/python
# coding=utf-8

def ishuiwen(num):
        if num <0 or num%10==0:
                ### 负数 或者末尾是0 的肯定不是回文
                return False
        i=0
        while i < num:
                i = i*10+num%10
                num = num/10
        return (num == i) or  (i/10 == num)

2:/**求一个字符串连续不重复的长度 acdd = 3, 1122345 = 4*/

/**求一个字符串连续不重复的长度 acdd = 3, 1122345 = 4*/
public static void findStringMaxNoSame(String st){

    Map<Character,Integer>  map = new HashMap<Character,Integer>();
    int j =0;
    int max =0;
    for(int i = 0; i < st.length(); i++){
        if(map.containsKey(st.charAt(i))){
           if(map.get(st.charAt(i)) > j){
               j = i;
            }
        }
        map.put(st.charAt(i),i);
        if(max < (i -j +1) ){
            max = i =j +1;
        }
    }
    System.out.println("max = [" + max+ "]  j  = "+j);
}

3. /**求一个子数组的最大的和**/

/**求一个子数组的最大的和**/
public static void  maxSubArrayList( int[] array){

    int max =0;
    int tmpMax =0;

    for(int i=0; i < array.length; i++){

        tmpMax += array[i];
        if(tmpMax <0){

            tmpMax=0;
            continue;
        }
        if(tmpMax > max){
            max =tmpMax;
        }
    }
    //全部为负数的时候
    if(max==0){
        max = array[0];
        for(int i=1; i < array.length; i++){

            if(max < array[i]){
                max = array[i];

            }
        }
    }

    System.out.println("array sub max = [" + max + "]");

}
4. 给定一个数字A,返回数组中和等于A的两个数子的index
public static void getAddIndexs(int[] array,int specalValue){

    //1<= specaVaue 放入map
    //减掉的数据是否在map中
    Map<Integer,Integer> map = new HashMap<Integer,Integer>();
    for(int i =0; i < array.length;i++){

        if((specalValue >= array[i]) && map.containsKey((specalValue-array[i]))){
            //有结果
            System.out.println(map.get((specalValue - array[i])) + " " + i);
        }
        map.put(array[i],i);
    }
}

5./*反转一个32位的整数,主要溢出*/

/*反转一个32位的整数,主要溢出*/
public static void reverse(int x) {

        // if x <0 处理; 处理类似: 1000
        String abs = String.valueOf(x);
        String intMax = String.valueOf(Integer.MAX_VALUE);
        StringBuffer sb =new StringBuffer();
        sb.append(abs);
        abs = sb.reverse().toString();
        if(intMax.compareTo(abs)<0){
            System.out.println("x reverse = [" + 0 + "]");
        }else{
            System.out.println("x reverse = [" + Integer.parseInt(abs) + "]");
        }
}

public static int reversev0(int x)
{
    int result = 0;

    while (x != 0)
    {
        int tail = x % 10;
        int newResult = result * 10 + tail;
        if ((newResult - tail) / 10 != result)//往回计算,利用溢出做比较
        { return 0; }
        result = newResult;
        x = x / 10;
    }

    return result;
}

© 著作权归作者所有

共有 人打赏支持
昏鸦
粉丝 7
博文 182
码字总数 59043
作品 0
程序员
私信 提问
【备忘】2017年最新整理python神经网络深度学习算法全套视频教程

2017年最新整理python神经网络深度学习算法全套视频教程 课程介绍: 此阶段主要介绍了Python语言为工具对每种算法进行结合实例讲解,并使用Python中相关的package来对实际问题进行数据预处理...

qq_38155396
2017/07/01
0
0
零基础自学数据挖掘工程师必知的四大阶段 第三阶段是重点

  本文介绍的学习路线使用的是当下主流数据分析挖掘编程语言Python来掌握数据挖掘的实际工作能力与认识水平。按照 1)基础理论→2)编程能力→3)挖掘应用→4)大数据实践 的学习流程来设置...

蓝胖子讲大数据
2017/11/07
0
0
[MachineLearing]6步进入机器学习领域(译)

step 1:搞定python基础 google两天python实训课程(视频) https://www.youtube.com/watch... step 2:机器学习基础 课程1(Tom Mitchell Machine Learning Lectures):http://www.cs.cmu.e......

米油
08/27
0
0
R语言数据挖掘实战系列(1)

R语言数据挖掘实战(1) 一、数据挖掘基础 数据挖掘:从数据中“淘金”,从大量数据(包括文本)中挖掘出隐含的、未知的、对决策有潜在价值的关系、模式和趋势,并用这些知识和规则建立用于决...

PXZ6603
2017/05/28
0
0
全国青少年信息学奥林匹克分区联赛(NOIP)竞赛大纲

(#表示普及组不涉及) 一、初赛内容与要求 (一)计算机的基本常识 诞生与发展 特点 在现代社会中的应用 计算机系统的基本组成 计算机的工作原理# 计算机中的数的表示 计算机信息安全基础知...

海天一树X
11/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Vavr User Guide中英对照版

Vavr User Guide(Vavr用户指南) Daniel Dietrich, Robert Winkler - Version 0.9.2,2018-10-01 0. Vavr Vavr是Java 8 的对象函数式扩展,目标是减少代码行数,提高代码质量,提供了持久化集合...

白石
21分钟前
0
0
Spark2.40 Streaming编程指南

Spark Streaming编程指南 概观 一个快速的例子 基本概念 链接 初始化StreamingContext 离散流(DStreams) 输入DStreams和Receivers DStreams的转换 DStreams的输出操作 DataFrame和SQL操作 ...

天天爬网
22分钟前
0
0
oozie 调度pyspark

http://www.learn4master.com/big-data/pyspark/run-pyspark-on-oozie

MPRO
25分钟前
0
0
转:文件系统read,write缓存,有点意思

当我们在linux系统下写程序的时候,经常会读文件或者写文件,既然要操作文件,就会用文件操作函数,其中涉及读写的不乏有read/write或者fread/fwrite,但是我们应该选择哪一种呢,少安毋躁,...

臧教授
30分钟前
0
0
通过示例学习Javascript闭包

译者按: 在上一篇博客,我们通过实现一个计数器,了解了如何使用闭包(Closure),这篇博客将提供一些代码示例,帮助大家理解闭包。 原文: JavaScript Closures for Dummies 译者: Fundebug 为...

Fundebug
31分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部