题目描述: 给定一个整数类型的数组 nums,请编写一个能够返回数组“中心索引”的方法。 我们是这样定义数组中心索引的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。 如果数组不存在中心索引,那么…
分类:算法
递归实现有序链表(不需要使用两个指针)
在使用有序链表作为基本数据结构时,当插入数据时,为了保持链表的有序性,我们需要两个指针来定位插入位置。通过递归我们可以巧妙的实现不要两个指针的做法。 // SortedSingleList.cpp : Defines t…
斐波那契数列
题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。 n<=39 # -*- coding:utf-8 -*- class Solution: def Fibonacci(sel…
快速排序 java
/** * @Description: 快速排序 * @author huangzhongjie * @mail [email protected] * @Company Digital China * @da…
英语数字转换器
这是我在coursrea上做练习的时候碰到的一道题。原题如下: 1. 英语数字转换器 来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩。) 注意: 总时间限制: 1000m…
归并排序、快速排序的原理以及C++实现
前言: 最近在上数据结构实验课,要求用数组实现一个链表,在做顺序合并的时候突然想起了归并排序也是那样做的;索性这次就来介绍七种排序中的后两种——归并排序…
单例模式在多线程并发情况下的一些思考。
最近刚开始看《剑指offer》这本书,其中有讲到单例模式,单例模式可以说是设计模式中最简单的一种了,实现起来也非常简单(曾经的我就是这么想的): /** * 单例模…
[038]如何选择机器学习分类器?
你知道如何为你的分类问题选择合适的机器学习算法吗?当然,如果你真正关心准确率,那么最佳方法是测试各种不同的算法(同时还要确保对每个算法测试不同参数),然后通过交叉验证选择最好的一个。但是,如果你只是为你的问题寻找一个“足…
两数相加
题目: 给定两个非空链表来代表两个非负数,位数按照逆序方式存储,它们的每个节点只存储单个数字。将这两数相加会返回一个新的链表。 你可以假设除了数字 0 之外,这两个数字都不会以零开头。 输入:(2 -> 4 -&g…
最小生成树-Kruscal-POJ 1258 Agri-Net
POJ 1258题目简单,背景忽略,就是直接裸露的使用kruscal方法求最短路。 虽然简单,但是深深的体会了这个题目的恶意,简直了。。。就是如下的代码: for (int i = 0; i < k; i++) {…
堆排序
public static void adjustHeap(int[] array,int parent, int len){ int temp = array[parent]; int child = 2 * pare…
Java程序员应当掌握的排序算法
总结一下 JDK中采用的排序算法,主要出现在两个类中。 java.util.Arrays static void sort(int[] a) static void sort(int[] a,…