丑陋的代码

JS学得半桶水,写起代码就很恶心。一直在学习怎么去让它看起来优雅,便于管理,但是我还是找不到。这跟环境有很大关系,我这里只有程序员,他们的JS也是一般的,他们不会考虑脚本怎么写好,怎么写便于管理。

 

从语句到封装成函数

大家都是从语句开始的,然后为了重复利用封装成函数,这个过程应该不会很难。尤其是有函数概念的人,但是对于没概念的人,他们还是要学这一步的。

然后就是代码组织之路……

我想到的是用一个命名空间,把所以的东西给放到它里面。这样便于管理同时又比较直观易懂。在我的知识里,这种命名空间相当于是一个对象,里面的各种方法也就是它的静态方法了,这样一来,他们是不能被实例化的,应该也不能继承(知识有限)。但是这种用命名空间管理起来的代码已经比函数高级些了。我记得一篇叫设计模式的文章说了各种模式,但是对于满篇的英文和本身对JS的理解有限,我只看得懂前面一些了。这个时期,我觉得我的代码应该也会用这种简便的命名空间来管理了。

高级的模块化

模块化看起来比较牛B的,但是对于AMD不那么懂的我,这无疑又是一次打击。这些模块之间多了谁依赖谁,哪一个要先加载……我放弃了,还是等资料多了再学习。

转载于:https://www.cnblogs.com/coolicer/archive/2012/07/20/2600960.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用Kruskal算法求解最小丑陋值问题的Java代码示例: ``` import java.util.*; // 定义边 class Edge implements Comparable<Edge> { int src, dest, weight; public int compareTo(Edge edge) { return this.weight - edge.weight; } } class MinimumUglinessValue { // 获取顶点的父节点 int find(int parent[], int i) { if (parent[i] == -1) { return i; } return find(parent, parent[i]); } // 合并两个顶点的集合 void union(int parent[], int x, int y) { int xset = find(parent, x); int yset = find(parent, y); parent[xset] = yset; } // 使用Kruskal算法求解最小生成树 void kruskalMST(int ugliness[], int V, Edge[] edges) { // 对边按权值从小到大排序 Arrays.sort(edges); int parent[] = new int[V]; Arrays.fill(parent, -1); int e = 0, i = 0; while (e < V - 1 && i < edges.length) { Edge edge = edges[i++]; int x = find(parent, edge.src); int y = find(parent, edge.dest); // 如果该边的两个顶点不在同一个集合中,则选择该边,并将两个集合合并 if (x != y) { union(parent, x, y); e++; ugliness[e] = edge.weight; } } } public static void main(String[] args) { int V = 4; // 顶点数 int E = 5; // 边数 Edge[] edges = new Edge[E]; edges[0] = new Edge(0, 1, 10); edges[1] = new Edge(0, 2, 6); edges[2] = new Edge(0, 3, 5); edges[3] = new Edge(1, 3, 15); edges[4] = new Edge(2, 3, 4); int[] ugliness = new int[V]; MinimumUglinessValue mst = new MinimumUglinessValue(); mst.kruskalMST(ugliness, V, edges); // 输出最小丑陋值 int minUgliness = Integer.MAX_VALUE; for (int i = 0; i < V; i++) { if (ugliness[i] < minUgliness) { minUgliness = ugliness[i]; } } System.out.println("Minimum ugliness value: " + minUgliness); } } ``` 该示例代码中,我们使用了Kruskal算法来求解最小生成树,并在过程中记录了每个边的权值,最终输出最小的权值即为最小丑陋值。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值