常用算法总结

本文总结了9种常用的算法方法,包括蛮力法、分治法、减治法、动态规划法、贪心法、回溯法、分支限界法、近似算法和概率算法。在各个方法中,列举了具体的应用实例,如蛮力法在查找、排序、组合问题和图论问题中的应用,分治法在排序和组合问题中的应用,减治法在查找和排序问题中的应用,以及动态规划法等高阶算法的介绍。
摘要由CSDN通过智能技术生成

1.蛮力法

蛮力法也称穷举法或者枚举法,设计思想:采用一定的策略依次处理待求解问题的所有元素,从而找出问题的解。

蛮力法在查找问题中的应用

  • 顺序查找

顺序查找是在查找集合中依次查询值为k的元素,若成功找出,则给出该元素在查找集合中的位置,若查找失败,则给出失败信息。

算法实现如下:

public static int getIndex(int[] arr,int k){
        for(int i =0;i<arr.length;i++){
            if(k == arr[i]){
                return  ++i;
            }
        }
        return -1;
    }
  • 串匹配问题

蛮力法在排序问题中的应用

  • 选择排序

选择排序的基本思想是第i趟排序在无序序列Ri~Rn中找到值最小的记录,并和第i个记录交换作为有序序列的第i个记录。

代码实现如下:

public static void selectSort(int[] arr){
        int index ;
        int temp ;
        for(int i = 0 ; i < arr.length;i++){
            index = i ;
            for(int j = i+1;j<arr.length;j++){
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值