using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace ConsoleApplication9
{
class Program
{
static void Main(string[] args)
{
// sql如下,我把它翻译成代码,加深理解
// SELECT MAX(id)FROM sys_menu E1
// WHERE
// (SELECT COUNT(DISTINCT(E2.id)) FROM sys_menu E2
// WHERE E2.id > E1.id
// ) = 1; --9990 List<int> list = new List<int> { , , , , };
int max = ;
foreach (var id1 in list)
{ int count = ;
var dic = new Dictionary<int, int>();
foreach (var id2 in list)
{
if (!dic.ContainsKey(id2))
{
if (id2> id1)
{
count++;
}
dic[id2] = ;
} }
//上面的代码说明id2>id1那么id1就不可能是最大的,并且比id1大的要求只能有一个,那么说过成语吧一人之下,万人之上 (注意这个至少要2个元素才有意义)
//所以也说明上面的sql有个陷阱SELECT MAX(id) 改为 select id也是可以的, 但其实max也是为了没有记录的时候返回一个空值
if (count != )
{
continue;
} if (max == )
{
max = id1;
}
else if (id1> max)
{
max = id1;
} }
Console.WriteLine(max);
Console.Read();
}
}
}

sql求倒数第二大的数,效率不高,但写法新颖的更多相关文章

  1. 无序数组求第K大的数

    问题描述 无序数组求第K大的数,其中K从1开始算. 例如:[0,3,1,8,5,2]这个数组,第2大的数是5 OJ可参考:LeetCode_0215_KthLargestElementInAnArra ...

  2. c# 各种排序算法+找第二大的数+句子单词反转

    冒泡排序 // 冒泡排序 bubble sort public static int[] BubbleSort(int []array) { bool isContinue = true; ; i & ...

  3. 《数据结构与算法分析:C语言描述》读书笔记------练习1.1 求第K大的数

    求一组N个数中的第k个最大者,设k=N/2. import java.util.Random; public class K_Max { /** * @param args */ //求第K大的数,保 ...

  4. 【优先队列-求第Ki大的数】Black Box

    Black Box Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 8637   Accepted: 3542 Descrip ...

  5. python找出数组中第二大的数

    #!usr/bin/env python #encoding:utf-8 ''''' __Author__:沂水寒城 功能:找出数组中第2大的数字 ''' def find_Second_large_ ...

  6. 如何使用一次for循环得到数组中第二大的数和第三大的数

    装载声明:http://blog.csdn.net/lxsmk9059/article/details/77920206?locationNum=1&fps=1 ,,,,,,,,}; ]; ] ...

  7. W - Doom HDU - 5239 线段树 找取模的规律+求一个很大的数的平方对一个数取模的写法 特别的模数==2^63-2^31

    这个题目一开始感觉还是有点难的,这个模数这么大,根本就不知道怎么写,然后去搜了题解,知道了怎么去求当x很大的时候x的平方对一个数取模怎么样不会爆掉. 然后还顺便发现了一个规律就是当一个数更新一定次数之 ...

  8. 求第k大的数(用到快速排序算法的思想)

    //下面两种part效率比较:相同运算量下part比part2快5倍左右,part2写法简单但是效率低 #include "stdafx.h" #include <iostr ...

  9. 找第二大的数SQL-Second Highest Salary

    1: 找小于最大的最大的 select max(Salary) from Employee where Salary<(select MAX(Salary) from Employee); 2. ...

随机推荐

  1. 无线渗透wep加密路由器

    停掉网络服务 service network-manager stop 检查现在的环境适不适合使用airmon-ng airmon-ng check 杀死可能冲突的进程 开启网卡monitor模式 a ...

  2. 安装scrapy框架

    前提安装好python.setuptools. 1.安装Python 安装完了记得配置环境,将python目录和python目录下的Scripts目录添加到系统环境变量的Path里.在cmd中输入py ...

  3. 【Django】ORM操作MySQL数据库遇到的一些问题

    关于查询操作: 1.exact和iexact exact相当于=   iexact相当于like(但是这里的like和数据库的不一样,没有给后面条件加上%%所以这里like和=的作用相似) artic ...

  4. SML + NL + HJ

    Join是一种试图将两个表结合在一起的谓词,一次只能连接2个表,表连接也可以被称为表关联.在后面的叙述中,我们将会使用”row source”来代替”表”,因为使用row source更严谨一些,并且 ...

  5. CentOS systemctl命令

    systemctl命令是系统服务管理器指令,它实际上将 service 和 chkconfig 这两个命令组合到一起. 任务 旧指令 新指令 使某服务自动启动 chkconfig --level 3  ...

  6. python的常用库及文档使用

    1.requests 官网链接 http://docs.python-requests.org/zh_CN/latest/user/quickstart.html 2.机器学习最热门的tensorfl ...

  7. [剑指Offer]判断一棵树为平衡二叉树(递归)

    题目链接 https://www.nowcoder.com/practice/8b3b95850edb4115918ecebdf1b4d222?tpId=0&tqId=0&rp=2&a ...

  8. Mac 动态库加载不上

    OC xcode can't found xxx.dylib 1 targer- build phase :link binary with library添加动态库 注意不要将后边的选项选成opti ...

  9. Json、JavaBean、String等互转

    Json.JavaBean.String等互转 本文介绍简单的Json.JavaBean.String互换(下文JavaBean简称Object对象,这里不是很严谨) 转换关系如下: 其中String ...

  10. linux命令学习之:route

    我们在网络基础的时候谈过关于路由的问题,两台主机之间一定要有路由才能够互通TCP/IP的协议,否则就无法进行联机.一般来说,只要有网络接口,该接口就会产生一个路由,例如:eth0及lo. route命 ...