14.05 - 使用正则表达式分割字符串

        // 使用空格切
        String str = "脉动 可口可乐 每年达";
        String[] arr = str.split(" ");

        for (int i = 0; i < arr.length; i++) {
            System.out.println(arr[i]);
        }

        // 使用点切
        String subStr = "脉动.可口可乐.每年达";
        String[] subArr = subStr.split("\\.");//.表示任一字符,需要用`\`转义才能起作用,其中前面的`\`用来转义第二个`\`。

        for (int i = 0; i < subArr.length; i++) {
            System.out.println(subArr[i]);
        }
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Scikit-opt是Python中一个用于求解优化问题的库,其中包含了求解旅行商问题的算法。旅行商问题(TSP)是一个经典的组合优化问题,它的目标是在给定的一组城市和城市之间的距离矩阵下,找到一条最短的路径,使得每个城市都被恰好访问一次,最后回到起点城市。 在Scikit-opt中,可以使用遗传算法、模拟退火、蚁群优化等算法来求解TSP问题。以下是使用遗传算法求解TSP问题的示例代码: ```python from sko.GA import GA_TSP import numpy as np # 城市坐标 coordinates = np.array([[16.47, 96.10], [16.47, 94.44], [20.09, 92.54], [22.39, 93.37], [25.23, 97.24], [22.00, 96.05], [20.47, 97.02], [17.20, 96.29], [16.30, 97.38], [14.05, 98.12], [16.53, 97.38], [21.52, 95.59], [19.41, 97.13], [20.09, 94.55], [22.55, 95.09], [24.38, 97.03], [25.23, 98.12], [25.53, 97.24], [22.00, 94.10], [24.05, 95.10], [23.09, 96.09], [25.23, 96.08], [24.38, 94.03], [22.53, 93.09], [20.47, 93.48]]) # 城市距离矩阵 distance_matrix = np.zeros((len(coordinates), len(coordinates))) for i in range(len(coordinates)): for j in range(len(coordinates)): distance_matrix[i][j] = np.sqrt(np.sum(np.square(coordinates[i] - coordinates[j]))) # 定义TSP问题的适应度函数 def tsp_func(solution): return sum([distance_matrix[solution[i-1]][solution[i]] for i in range(len(solution))]) # 定义遗传算法对象 ga_tsp = GA_TSP(func=tsp_func, n_dim=len(coordinates), size_pop=50, max_iter=500, prob_mut=0.1, prob_crossover=0.9) # 运行遗传算法求解TSP问题 best_solution, best_fitness = ga_tsp.run() # 输出最优解和最优适应度值 print('最优解:', best_solution, '最优适应度值:', best_fitness) ``` 在上面的代码中,我们首先定义了一组城市的坐标和城市之间的距离矩阵。然后定义了TSP问题的适应度函数,它的返回值是从起点出发,经过所有城市一次后回到起点的路径长度。接着创建了一个GA_TSP对象,并设置了算法参数。最后运行遗传算法来求解TSP问题,并输出最优解和最优适应度值。 需要注意的是,这里的遗传算法只是其中一种求解TSP问题的算法,Scikit-opt中还包含了其他优化算法可以用来求解TSP问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

依旧风轻

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值