首页 > 其他分享 >面试板子

面试板子

时间:2024-05-12 23:20:18浏览次数:17  
标签:int void 板子 down 面试 swap ia --

插入排序

    for(int i=1;i<=n;i++)
        for(int j=i;j>=2;j--)
        {
            if(a[j]>a[j-1])
                swap(a[j],a[j-1]);
            else 
                break;
        }

 

选择排序

    for(int i=1;i<=n;i++)
        for(int j=i+1;j<=n;j++)
            if(a[i]>a[j]) swap(a[i],a[j]);

 

冒泡排序

    for(int i=1;i<=n;i++)
        for(int j=1;j<=n-1;j++)
            if(a[j]>a[j+1]) swap(a[j],a[j+1]);

 

快速排序

void q_sort(int l,int r)
{
    if(l<r)
    {
        int mid = partition(l,r);
        q_sort(l,mid-1);
        q_sort(mid+1,r);        
    }
}
int partition(int l,int r)
{
    int x = a[r];
    int i=l-1;
    for(int j=l;j<=r-1;j++)
    {
        
        if(a[j]<=x)
        {
            i++;
            swap(a[i],a[j]);
        }
    }
    swap(a[i+1],a[r]);
    return i+1;
}

 

堆排序

void down(int i,int n)
{
    while(i*2<=n)
    {
        int j=i*2;
        if(j+1<=n && a[j+1]>a[j]) j++;
        if(a[i]<a[j])
        {
            swap(a[i],a[j]);
            i=j;
        }
        else break;
    }
}

for(int i=n/2;i>=1;i--) down(i,n);
    
    for(int i=1;i<=n;i++)
    {
        swap(a[1],a[n-i+1]);    
        down(1,n-i);
    }

 

标签:int,void,板子,down,面试,swap,ia,--
From: https://www.cnblogs.com/hfang/p/18186427

相关文章

  • 代码随想录算法训练营第第二天 | 24. 两两交换链表中的节点 、19.删除链表的倒数第N
    两两交换链表中的节点用虚拟头结点,这样会方便很多。本题链表操作就比较复杂了,建议大家先看视频,视频里我讲解了注意事项,为什么需要temp保存临时节点。题目链接/文章讲解/视频讲解:https://programmercarl.com/0024.两两交换链表中的节点.html/***Definitionforsingly-li......
  • Java面试题:线程池内“闹情绪”的线程,怎么办?
    在Java中,线程池中工作线程出现异常的时候,默认会把异常往外抛,同时这个工作线程会因为异常而销毁,我们需要自己去处理对应的异常,异常处理的方法有几种:在传递的任务中去处理异常,对于每个提交到线程池中的执行的任务,可以提前通过异常进行捕获,这样即便出现了异常,也不会影响线程池中的......
  • 贝壳面试:MySQL联合索引,最左匹配原则是什么?
    文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录博客园版为您奉上珍贵的学习资源:免费赠送:《尼恩Java面试宝典》持续更新+史上最全+面试必备2000页+面试必备+大厂必备+涨薪必备免费赠送:《尼恩技术圣经+高并发系列PDF》,帮你实现技术自由,完成职业升级,薪......
  • 测试面试
           搜索复制......
  • 2024-05-11 react-native 相关面试题
     ReactNative是什么?ReactNative是Facebook开源的一个使用JavaScript和React编写原生应用的框架。它允许开发者使用JavaScript和React编写跨平台的移动应用,这些应用可以运行在iOS和Android平台上。ReactNative有哪些优点?跨平台:一套代码可以开发出跨平台的app,减少了人......
  • Hive中sql语句是如何转换成MapReduce的(面试题)
    Hive中的sql语句是如何转化成MR任务的(面试)元数据存储在数据库中,默认存在自己自带的derby数据库中(derby在Hive启用的时候会占用元数据库,且数据不会共享给客户端,所以1一次只能有一个客户端使用,开了另一个客户端就会连接不上)1)、解析器(SQLParser):将SQL字符串转换成抽象语法树AST(3.......
  • Java面试题:Spring Bean线程安全?别担心,只要你不写并发代码就好了!
    Spring中的Bean是否线程安全取决于Bean的作用域(scope)。Spring提供了几种不同的Scope,其中包括Singleton、Prototype、Request、Session、GlobalSession等。 SingletonScope(单例模式)默认情况下,SpringBean是SingletonScope,这意味着在整个应用程序上下文中只有一个实例。......
  • 面试经验
    1.2024/5/10:太平洋房屋1.kafka怎么保证分区间有序①.Key-basedPartitioning,指定相同key的消息会被路由到同一个分区②.自定义分区器2.paimon合并机制3.指标体系的理解3.运维换磁盘怎么保证集群任务不挂4.数据湖技术的比较5.离线和实时的任务怎么部署的6.QPS1天数据量......
  • DDD面试题:DDD聚合和表的对应关系是什么 ?(来自蚂蚁面试)
    文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录博客园版为您奉上珍贵的学习资源:免费赠送:《尼恩Java面试宝典》持续更新+史上最全+面试必备2000页+面试必备+大厂必备+涨薪必备免费赠送:《尼恩技术圣经+高并发系列PDF》,帮你实现技术自由,完成职业升级,薪......
  • Java面试题:@PostConstruct、init-method和afterPropertiesSet执行顺序?
    在Spring框架中,@PostConstruct注解、init-method属性、以及afterPropertiesSet()方法通常用于初始化Bean的逻辑。它们都提供了在Bean创建和初始化完成后执行的方法,但执行顺序有所不同。想要知道@PostConstruct、init-method、afterPropertiesSet()的执行顺序,只要搞明白它们各自在......