Skip to content

Instantly share code, notes, and snippets.

View jmlon's full-sized avatar

Jorge M. Londoño jmlon

  • UPB
  • Medellín, Colombia
  • X @jmlon
View GitHub Profile
@jmlon
jmlon / Factorial.py
Created May 14, 2021 14:02
Factorial recursivo
def factorialRecursivo(n):
assert type(n) is int
if n==0:
return 1
else:
return n*factorialRecursivo(n-1)
n = int(input('Ingrese n: '))
@jmlon
jmlon / Cuadratica.py
Last active November 5, 2021 20:26
Solución de la ecuación cuadratica (solo raíces reales)
# Módulo para funciones matematicas en los reales
# https://docs.python.org/3/library/math.html
import math
a = float(input("Ingrese a: "))
b = float(input("Ingrese b: "))
c = float(input("Ingrese c: "))
# Comprobar la precondición
if b**2-4*a*c>=0:
contract Energia2 {
address public consumidor;
address payable public generador;
address public contador;
address payable public distribuidora;
uint public energiaSolicitada;
uint public valorAPagar;
event ContratoEstablecido(address consumidor, address productor);
@jmlon
jmlon / energia1.sol
Last active December 16, 2020 19:36
// SPDX-License-Identifier: GPL-3.0
pragma solidity ^0.7.0;
contract Energia1 {
address public consumidor;
address payable public generador;
address public contador;
address payable public distribuidora;
uint public energiaSolicitada;
@jmlon
jmlon / busquedaBinaria.py
Created October 22, 2020 20:10
Ejemplo de implementación de la búsqueda binaria de forma recursiva
def busquedaBinaria(lista, dato, inicio, fin):
"""Búsqueda binario de un dato en una lista.
La búsqueda opera recursivamente en el rango entre inicio y fin inclusive
"""
if inicio>fin:
return -1
else:
medio = (inicio+fin)//2
@jmlon
jmlon / BusquedaBinaria.java
Created October 19, 2020 15:29
Una implementación recursiva de la búsqueda binaria
public class BusquedaBinaria {
public static int busqueda(int[] d, int clave, int primero, int ultimo) {
if (primero>ultimo) {
return -1;
}
else {
int medio = (primero+ultimo)/2;
if (clave<d[medio])
import java.util.HashMap;
import edu.princeton.cs.algs4.Bag;
import edu.princeton.cs.algs4.MinPQ;
import edu.princeton.cs.algs4.Queue;
import edu.princeton.cs.algs4.SeparateChainingHashST;
import edu.princeton.cs.algs4.StdIn;
import edu.princeton.cs.algs4.StdOut;
public class Hashcodes {
@jmlon
jmlon / InfijaPostfijaPrefija.java
Created September 7, 2020 16:47
Ejercicio para convertir expresiones aritmeticas entre formatos: prefijo, postfijo, infijo
import java.util.NoSuchElementException;
import edu.princeton.cs.algs4.Stack;
import edu.princeton.cs.algs4.StdIn;
import edu.princeton.cs.algs4.StdOut;
public class InfijaPostfijaPrefija {
static class Node {
Double value;
@jmlon
jmlon / Goodreads.java
Created September 4, 2020 22:55
Ejemplos de aplicación de los árboles de búsqueda binarios
/**
* Ejemplos de uso de la tabla de símbolos ordenada
*
* @author Jorge Londoño
* Dataset: https://www.kaggle.com/jealousleopard/goodreadsbooks
*
*/
import java.util.Date;
import java.util.Calendar;
@jmlon
jmlon / ListaSimple.java
Last active July 17, 2020 13:48
Ejercicios con listas simplemente enlazadas
import java.util.Iterator;
import edu.princeton.cs.algs4.StdOut;
public class ListaSimple<T> implements Iterable<T> {
private class Nodo {
T item;
Nodo sig;
}